[PATCH] D101192: Add support for #elifdef and #elifndef
Aaron Ballman via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Jun 1 11:07:15 PDT 2021
aaron.ballman added inline comments.
================
Comment at: clang/lib/Lex/PPDirectives.cpp:594
+ if (CondInfo.FoundElse)
+ Diag(Tok, diag::pp_err_elif_after_else) << PED_Elif;
----------------
bjope wrote:
> Hi @aaron.ballman
>
> This change is missing from https://reviews.llvm.org/rG8edd3464afbff65d7d5945b3a8b20009d6ff5deb , while you instead got it when doing the pp_err_else_after_else diagnostic a couple of lines above this.
>
> It causes asserts (in DIagnostic::getArgKind) for me in test cases verifying the "elif after else" scenario using a test case basically doing
> ```
> #if 1
> #else
> #elif
> #endif
> ```
> So maybe such a test case should be added as well?
>
> But it seems like the patch you committed doesn't match with the reviewed patch. So maybe you can look into this and fix it?
> (let me know if you need some additional help)
Great catch and thank you for the test case! It seems that when I applied the patch, it misapplied, but not in a way that caused a test failure. I have no idea how that happened, but I assume I screwed up something with git somewhere along the way and caused the failure.
I've pushed baa2b8d08502acfa91a8dfd699d25f7b4e25edbb to fix it. Thanks!
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D101192/new/
https://reviews.llvm.org/D101192
More information about the cfe-commits
mailing list