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