================
@@ -13367,6 +13367,8 @@ static void DiagnoseConstAssignment(Sema &S, const Expr
*E,
if (!DiagnosticEmitted) {
S.Diag(Loc, diag::err_typecheck_assign_const)
<< ExprRange << ConstVariable << VD << VD->getType();
+ S.Diag(Loc, diag::note_typecheck_expression_not_modifiable_lvalue)
+ << E->getSourceRange();
----------------
Rajveer100 wrote:
Well, for cases such as these:
```C++
void dr108(void) {
#define const
const int i = 12;
#undef const
const int j = 12; /* expected-note {{variable 'j' declared const here}} */
i = 100; /* Okay, the keyword was hidden by the macro. */
j = 100; /* expected-error {{cannot assign to variable 'j' with
const-qualified type 'const int'}} */
^^^^^
}
```
It doesn't make sense right.
https://github.com/llvm/llvm-project/pull/94159
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits