]> granicus.if.org Git - clang/commit
Add a missing Invalid check to SubobjectDesignator::isOnePastEnd()
authorReid Kleckner <reid@kleckner.net>
Wed, 23 Jul 2014 23:24:25 +0000 (23:24 +0000)
committerReid Kleckner <reid@kleckner.net>
Wed, 23 Jul 2014 23:24:25 +0000 (23:24 +0000)
commitee41dd0f7cc73a0ed02191a9b064c2de63ac8ccf
tree820b2a663fa56694e492290eb1797a15c6be2493
parent6bf6289a8dc78f158929466940b3dc1106d6cc11
Add a missing Invalid check to SubobjectDesignator::isOnePastEnd()

The class seems to have an invariant that Entries is non-empty if
Invalid is false.  It appears this method was previously private, and
all internal uses checked Invalid.  Now there is an external caller, so
check Invalid to avoid array OOB underflow.

Fixes PR20420.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@213816 91177308-0d34-0410-b5e6-96231b3b80d8
lib/AST/ExprConstant.cpp
test/SemaCXX/warn-global-constructors.cpp