Fix handling of objects under construction during constant expression
authorRichard Smith <richard-llvm@metafoo.co.uk>
Fri, 10 May 2019 20:05:32 +0000 (20:05 +0000)
committerRichard Smith <richard-llvm@metafoo.co.uk>
Fri, 10 May 2019 20:05:32 +0000 (20:05 +0000)
commitc0fe5eb39c85756e02d1bf3e05127bc7e55a8973
tree1c1b76932416544aa3a94743dd85f5607561eb09
parent5b5e27afa441f13fab524cb81c05dfaf54e22895
Fix handling of objects under construction during constant expression
evaluation.

It's not enough to just track the LValueBase that we're evaluating, we
need to also track the path to the objects whose constructors are
running.

llvm-svn: 360464
clang/include/clang/AST/APValue.h
clang/include/clang/Basic/DiagnosticASTKinds.td
clang/lib/AST/APValue.cpp
clang/lib/AST/ExprConstant.cpp
clang/test/SemaCXX/constant-expression-cxx1y.cpp