diff --git a/src/cpp.c b/src/cpp.c index 5e695826bba25cb5b31f0d4161de3c4e56c64f81..0abbf55d68a8957098d03f749b2cbb83b0af3727 100644 --- a/src/cpp.c +++ b/src/cpp.c @@ -2268,9 +2268,16 @@ static void insert_callback_define(struct cpp *this, this->handler, this->compat_handler, 2, 0 ) && TYPEOF(sp[-1]) == T_STRING ) { string_builder_shared_strcat(tmp, sp[-1].u.string); - string_builder_sprintf(tmp, "\n#line %ld ", (long)this->current_line); - insert_current_file_as_string( this,def,args,tmp); - string_builder_putchar(tmp, '\n'); + if( !this->prefix ){ + int min; + check_string_range( sp[-1].u.string, 0, &min, 0 ); + if( min < 32 ) + { + string_builder_sprintf(tmp, "\n#line %ld ", (long)this->current_line); + insert_current_file_as_string( this,def,args,tmp); + string_builder_putchar(tmp, '\n'); + } + } pop_stack(); } }