diff options
Diffstat (limited to 'test/meta.cpp')
-rw-r--r-- | test/meta.cpp | 6 |
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; |