summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Source/Preprocessor/cpp.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/Source/Preprocessor/cpp.c b/Source/Preprocessor/cpp.c
index b9ce54361..55058fc13 100644
--- a/Source/Preprocessor/cpp.c
+++ b/Source/Preprocessor/cpp.c
@@ -1297,9 +1297,14 @@ static DOH *Preprocessor_replace(DOH *s, DOH *line_file) {
args = 0;
}
e = expand_macro(id, args, s);
- if (e)
+ if (e) {
Append(ns, e);
+ }
+ while (macro_additional_lines--) {
+ Putc('\n', ns);
+ }
Delete(e);
+ Delete(args);
} else {
Append(ns, id);
}