aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/meta.cpp
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2018-08-27 13:07:34 +0200
committerGravatar Gael Guennebaud <g.gael@free.fr>2018-08-27 13:07:34 +0200
commit57472886764ff71ad45338c6538649f7a8fa3d0e (patch)
tree69b7df88ad7cc9c8a314f3e16d4326db094db8bf /test/meta.cpp
parentd5ed64512fc79dff800c90acd73e3e6a08a3d2c3 (diff)
Disable a bonus unit-test which is broken with gcc 4.7
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;