[clang] [clang-tools-extra] [clang][modules] Serialize `CodeGenOptions` (PR #146422)
Jan Svoboda via cfe-commits
cfe-commits at lists.llvm.org
Wed Jul 2 11:38:57 PDT 2025
jansvoboda11 wrote:
> > Would you have a different opinion if I told you that the next PR in my queue re-introduces AFFECTING_*_CODEGENOPT to represent the affecting ENUM_LANGOPT(ExceptionHandling, ...?
>
> I think it helps a bit, but the core problem is that we don't have `BENIGN_CODEGENOPT`.
>
> > (FWIW I'm, working on simplifying the hierarchy of LANGOPT macros so that the "effect on AST" is an explicit argument to the X macro. If we apply the same concept on CODEGENOPT, I think that gets us into a reasonable place where the naming is consistent between both and everything is explicit.
>
> Yes, applying this to codegen options seems clear enough to me, because it makes "benign" explicit, which is what is lacking currently.
Ok, so what do you suggest? Change all `CODEGENOPT` to `BENIGN_CODEGENOPT` before this PR lands? (Or alternatively/equivalently go all the way and add an explicit `benign` effect on AST argument to `CODEGENOPT`, similar to what I linked above for `LangOptions`?) Then we can add `compatible` in this patch, and `affecting` for `ExceptionHandling` in a follow up PR. Would that make more sense to you?
https://github.com/llvm/llvm-project/pull/146422
More information about the cfe-commits
mailing list