| 2970 | } |
| 2971 | |
| 2972 | FUNCTION * function_compile_actions( char const * actions, OBJECT * file, |
| 2973 | int line ) |
| 2974 | { |
| 2975 | compiler c[ 1 ]; |
| 2976 | JAM_FUNCTION * result; |
| 2977 | VAR_PARSE_ACTIONS * parse; |
| 2978 | current_file = object_str( file ); |
| 2979 | current_line = line; |
| 2980 | parse = parse_actions( actions ); |
| 2981 | compiler_init( c ); |
| 2982 | var_parse_actions_compile( parse, c ); |
| 2983 | var_parse_actions_free( parse ); |
| 2984 | compile_emit( c, INSTR_RETURN, 0 ); |
| 2985 | result = compile_to_function( c ); |
| 2986 | compiler_free( c ); |
| 2987 | result->file = object_copy( file ); |
| 2988 | result->line = line; |
| 2989 | return (FUNCTION *)result; |
| 2990 | } |
| 2991 | |
| 2992 | static void argument_list_print( struct arg_list * args, int num_args ); |
| 2993 |
no test coverage detected