Preprocessor directives can now appear in the argument list of function-like macro calls.

#pragma PP-tokens can now be macro replaced.
#include header names directly enclosed in <> are free of macro replacement.
Preprocess-only mode (-E) now outputs with #line as source info.
Moved testcases for #760 and #1357.
Added testcase for #1643.
This commit is contained in:
acqn
2022-07-26 21:10:38 +08:00
parent 80fc8cd11e
commit 2f357ba9b2
9 changed files with 420 additions and 144 deletions

View File

@@ -425,6 +425,9 @@ void Compile (const char* FileName)
/* Generate the code generator preamble */
g_preamble ();
/* Init preprocessor */
InitPreprocess ();
/* Open the input file */
OpenMainFile (FileName);
@@ -497,6 +500,9 @@ void Compile (const char* FileName)
}
/* Done with preprocessor */
DonePreprocess ();
if (Debug) {
PrintMacroStats (stdout);
}