shafik added inline comments.

================
Comment at: clang/lib/Sema/SemaDecl.cpp:15186
+  // different handling.
+  ExprEvalContexts.back().InImmediateFunctionContext = FD->isConsteval();
+
----------------
I am a bit concerned that we are updating `InImmediateFunctionContext` outside 
of `PushExpressionEvaluationContext`. So we are now spreading the logic outside 
of where it was originally contained.

I am wondering if instead inside of `PushExpressionEvaluationContext` we could 
set `InImmediateFunctionContext` like so:

```
ExprEvalContexts.back().InImmediateFunctionContext =
      ExprEvalContexts[ExprEvalContexts.size() - 2]
          .isImmediateFunctionContext() || NewContext == 
ImmediateFunctionContext;
```

or something along those lines.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D147531/new/

https://reviews.llvm.org/D147531

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to