#define TYPE_CHECK(T, S) \
while (false) { \
*(static_cast<T* volatile*>(0)) = static_cast<S*>(0); \
}
Google v8のコードを読んでいて、タイプチェック用の上記のマクロを見つけました。
しかし、なぜそれが機能するのかわかりません。while(false)は実行されませんよね?誰かがそれらの行を説明できますか?ありがとう