1 Commits

Author SHA1 Message Date
Oleksandr Tarasiuk
bf7e2b81e7
[Clang] prevent preprocessor crash on incomplete scoped __has_cpp_attribute arguments (#178273)
Fixes #178098

---

This patch addressed the issue when `__has_cpp_attribute` is expanded
with incomplete scoped attributes. The scoped name parsing can lex to
`eof`/`eod` at


3f5a5d45d1/clang/lib/Lex/PPMacroExpansion.cpp (L1877-L1881)

and then proceed with


3f5a5d45d1/clang/lib/Lex/PPMacroExpansion.cpp (L1425-L1430)


since `eof`/`eod` is not guarded at


3f5a5d45d1/clang/lib/Lex/PPMacroExpansion.cpp (L1367-L1372)

this could lead to a preprocessor crash


3f5a5d45d1/clang/lib/Lex/PPMacroExpansion.cpp (L1370)
2026-01-28 15:44:48 +02:00