[c++17] Implement P0145R3 during constant evaluation.
authorRichard Smith <richard@metafoo.co.uk>
Tue, 6 Oct 2020 00:52:23 +0000 (17:52 -0700)
committerRichard Smith <richard@metafoo.co.uk>
Tue, 6 Oct 2020 02:04:14 +0000 (19:04 -0700)
commitded79be63555f4e5bfdb0db27ef22b71fe568474
tree35d1b4e9700aa7b45aa4ec9a35923c34cba7dd7d
parentebf6fd633ef83b747bac721aafc3677d2c47aef1
[c++17] Implement P0145R3 during constant evaluation.

Ensure that we evaluate assignment and compound-assignment
right-to-left, and array subscripting left-to-right.

Fixes PR47724.
clang/lib/AST/ExprConstant.cpp
clang/test/SemaCXX/constant-expression-cxx1z.cpp
clang/www/cxx_status.html