aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/meta.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/meta.cpp')
-rw-r--r--test/meta.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/test/meta.cpp b/test/meta.cpp
index a6a67b85c..ea9607fe7 100644
--- a/test/meta.cpp
+++ b/test/meta.cpp
@@ -102,7 +102,13 @@ EIGEN_DECLARE_TEST(meta)
}
STATIC_CHECK(( !internal::is_convertible<MyInterface, MyImpl>::value ));
+ #if (!EIGEN_COMP_GNUC_STRICT) || (EIGEN_GNUC_AT_LEAST(4,8))
+ // GCC prior to 4.8 fails to compile this test:
+ // error: cannot allocate an object of abstract type 'MyInterface'
+ // In other word, it does not obey SFINAE.
+ // Nevertheless, we don't really care about supporting abstract type as scalar type!
STATIC_CHECK(( !internal::is_convertible<MyImpl, MyInterface>::value ));
+ #endif
STATIC_CHECK(( internal::is_convertible<MyImpl, const MyInterface&>::value ));
{
int i;