AFAIK, C++ offers destructors for primitive types for consistency reason. But that doesn't work for bool
type.
bool* vptr;
vptr->~bool(); // Error. "Expected a class name after '~' to name a destructor"
int8_t* vptr;
vptr->~int8_t(); // No error.
What's wrong with my code? Here's my compiler version.
Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
Target: x86_64-apple-darwin12.5.0
Thread model: posix