From 9ce8eb0fbc83d9652f9266e5c7077727b8012db9 Mon Sep 17 00:00:00 2001 From: Ethan Luis McDonough Date: Sat, 18 Feb 2023 01:56:15 -0600 Subject: [PATCH] [flang] Remove macro replacement in angular bracket includes Addresses Github issue [[ https://github.com/llvm/llvm-project/issues/60317 | #60317 ]]. Reviewed By: klausler Differential Revision: https://reviews.llvm.org/D143469 --- flang/lib/Parser/preprocessor.cpp | 2 +- flang/test/Preprocessing/preserve-brace-include.F90 | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 flang/test/Preprocessing/preserve-brace-include.F90 diff --git a/flang/lib/Parser/preprocessor.cpp b/flang/lib/Parser/preprocessor.cpp index c8f944e4a596..58b54f4f1a8c 100644 --- a/flang/lib/Parser/preprocessor.cpp +++ b/flang/lib/Parser/preprocessor.cpp @@ -599,7 +599,7 @@ void Preprocessor::Directive(const TokenSequence &dir, Prescanner &prescanner) { "#include: expected '>' at end of included file"_port_en_US); } TokenSequence braced{dir, j + 1, k - j - 1}; - include = ReplaceMacros(braced, prescanner).ToString(); + include = braced.ToString(); j = k; } else if ((include = dir.TokenAt(j).ToString()).substr(0, 1) == "\"" && include.substr(include.size() - 1, 1) == "\"") { // #include "foo" diff --git a/flang/test/Preprocessing/preserve-brace-include.F90 b/flang/test/Preprocessing/preserve-brace-include.F90 new file mode 100644 index 000000000000..22df3543b510 --- /dev/null +++ b/flang/test/Preprocessing/preserve-brace-include.F90 @@ -0,0 +1,5 @@ +! RUN: %flang -E -I%S %s | FileCheck %s + +#define empty ERR_NONEXISTENT +! CHECK-NOT: :5: +#include -- 2.34.1