[WebIDL] Replace use of __is_polymorphic with standard std::is_polymorphic<>::value
[WebKit.git] / Source / WebCore / bindings / scripts / test / JS / JSInterfaceName.cpp
index a1c88f9..148328d 100644 (file)
@@ -199,12 +199,12 @@ JSC::JSValue toJSNewlyCreated(JSC::ExecState*, JSDOMGlobalObject* globalObject,
     void* expectedVTablePointer = reinterpret_cast<void*>(__identifier("??_7InterfaceName@WebCore@@6B@"));
 #else
     void* expectedVTablePointer = &_ZTVN7WebCore13InterfaceNameE[2];
-#if COMPILER(CLANG)
+#endif
+
     // If this fails InterfaceName does not have a vtable, so you need to add the
     // ImplementationLacksVTable attribute to the interface definition
-    static_assert(__is_polymorphic(InterfaceName), "InterfaceName is not polymorphic");
-#endif
-#endif
+    static_assert(std::is_polymorphic<InterfaceName>::value, "InterfaceName is not polymorphic");
+
     // If you hit this assertion you either have a use after free bug, or
     // InterfaceName has subclasses. If InterfaceName has subclasses that get passed
     // to toJS() we currently require InterfaceName you to opt out of binding hardening