279 |
scm_out_of_range (caller, pos); |
scm_out_of_range (caller, pos); |
280 |
if (!((modes & SCM_WRTNG) || (modes & SCM_RDNG))) |
if (!((modes & SCM_WRTNG) || (modes & SCM_RDNG))) |
281 |
scm_misc_error ("scm_mkstrport", "port must read or write", SCM_EOL); |
scm_misc_error ("scm_mkstrport", "port must read or write", SCM_EOL); |
282 |
z = scm_alloc_cell (scm_tc16_strport, 0); |
z = scm_cell (scm_tc16_strport, 0); |
283 |
SCM_DEFER_INTS; |
SCM_DEFER_INTS; |
284 |
pt = scm_add_to_port_table (z); |
pt = scm_add_to_port_table (z); |
285 |
SCM_SET_CELL_TYPE (z, scm_tc16_strport | modes); |
SCM_SET_CELL_TYPE (z, scm_tc16_strport | modes); |