]> granicus.if.org Git - clang/commit
Disallow reinterpret_cast from pointer to bool on Windows
authorHans Wennborg <hans@hanshq.net>
Thu, 6 Jun 2013 09:16:36 +0000 (09:16 +0000)
committerHans Wennborg <hans@hanshq.net>
Thu, 6 Jun 2013 09:16:36 +0000 (09:16 +0000)
commit649c6c50fd3dd13577071b26fec4495f7538d923
tree0b52d6bb889101e338208f14945817cdc74caaee
parent9acb8b4355028887e8cc4aa8f683aceee021a62b
Disallow reinterpret_cast from pointer to bool on Windows

This became allowed by accident in r131201, but triggers an assert.
That patch added an exception to allow conversion from pointers to
narrow integral types for MSVC compatibility. However, a pointer can
already be converted to bool in a civilized manner; allowing conversion
via reinterpret_cast is a bad idea.

Fixes PR16222.

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