|
|
@@ -370,7 +370,15 @@ lexer_handle_pp(struct lexer *l, struct lexer_err *err)
|
|
|
goto ret_ok;
|
|
|
break;
|
|
|
|
|
|
- case TT_PP_DEFINE: goto ret_illegal; break;
|
|
|
+ case TT_PP_DEFINE:
|
|
|
+ ident = lexer_read_until_or(l, '\n', '\\', &reached_limit);
|
|
|
+ if ( reached_limit == true ) {
|
|
|
+ goto ret_illegal;
|
|
|
+ }
|
|
|
+
|
|
|
+ t = token_create(tt, ident);
|
|
|
+ goto ret_ok;
|
|
|
+ break;
|
|
|
case TT_PP_IFNDEF: goto ret_illegal; break;
|
|
|
case TT_PP_IFDEF: goto ret_illegal; break;
|
|
|
case TT_PP_IF: goto ret_illegal; break;
|