Module decl_require = Begin !+ ! decl_require - include the contents of another file ! ! syntax: ! ! REQUIRE ';' !- Require 'bliss.req'; External Routine file_require; Global Routine decl_require : Novalue = Begin Local s : Ref GT; ! skip over 'REQUIRE' and get the name of the file to include RUND(QL_STRING); ! make sure we have what we want If .SYM[gt_type] Neq T_STRING Or .DEL Neq TK_SEMICOLON Then Begin WARNEM(.pos_sym,B11$_MISSING_STRING); Return End; ! save the string and pass over the ';' s = .SYM; RUND(QL_LEXEME); ! stack a stream for the file and open it up MACRSWAP(SRC_FILE,0,0); mac_file = file_require(.s); FreeNode(.s) End; End Eludom