aboutsummaryrefslogtreecommitdiff
path: root/lib/Sema/SemaPseudoObject.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2011-11-08 01:31:09 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2011-11-08 01:31:09 +0000
commitdb1822c6de43ff4aa5fa00234bf8222f6f4816e8 (patch)
tree1e97ac9bfa065bced885a70001465f0efb8d9252 /lib/Sema/SemaPseudoObject.cpp
parentda95f73b59f9af964e33725c515139d34c90c863 (diff)
Fix a cluster of related issues involving value-dependence and constant
expression evaluation: - When folding a non-value-dependent expression, we may try to use the initializer of a value-dependent variable. If that happens, give up. - In C++98, actually check that a const, non-volatile DeclRefExpr inside an ICE is of integral or enumeration type (a reference isn't OK!) - In C++11, DeclRefExprs for objects of const literal type initialized with value-dependent expressions are themselves value-dependent. - So are references initialized with value-dependent expressions (though this case is missing from the C++11 standard, along with many others). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144056 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaPseudoObject.cpp')
0 files changed, 0 insertions, 0 deletions