]> granicus.if.org Git - clang/commit
Sema: Fix crash during member pointer conversion involving incomplete classes
authorDavid Majnemer <david.majnemer@gmail.com>
Thu, 16 Jan 2014 12:02:55 +0000 (12:02 +0000)
committerDavid Majnemer <david.majnemer@gmail.com>
Thu, 16 Jan 2014 12:02:55 +0000 (12:02 +0000)
commitb52564aa96febc1e791dd26213c87c4a591251dc
treec1da7df256e715ab2930f5bc840f23a8185a70d1
parent92df5141d76c628b3b3861a30a1ad0c152f34664
Sema: Fix crash during member pointer conversion involving incomplete classes

We would attempt to determine the inheritance relationship between
classes 'A' and 'B' during static_cast if we tried to convert from 'int
A::*' to 'int B::*'.  However, the question "does A derive from B" is
not meaningful when 'A' isn't defined.

Handle this case by requiring that 'A' be defined.

This fixes PR18506.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199374 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Sema/SemaCast.cpp
test/SemaCXX/static-cast.cpp