MIPS编译器上的Eigen 3.3.4编译错误(C ++ 98)

时间:2017-08-25 07:12:27

标签: c++ templates mips eigen greenhills

我在Multi-2000(Green Hill)MIPS C ++编译器下编译Eigen 3.3.4。 在Macros.h中解决了一些对齐宏问题之后,我再次遇到了一些模板表达式的问题。 找到错误详细信息如下。我知道这应该是我的旧C ++编译器的一些问题,但任何能够提出解决方案的人都将非常感激。

"C:\Eigen/Eigen/src/Core/util/Meta.h", line 389
: error:
          expression must have pointer-to-class type
    template <typename C> static meta_yes testFunctor(C const *,typename enable_if<(sizeof(return_ptr<C>()->operator()())>0)>::type * =
 0);
                                                                                           ^

"C:\Eigen/Eigen/src/Core/util/Meta.h", line 389
: error:
          incomplete type is not allowed
    template <typename C> static meta_yes testFunctor(C const *,typename enable_if<(sizeof(return_ptr<C>()->operator()())>0)>::type * =
 0);
                                                                     ^

所以问题必须在内部表达如下。但我真的无法理解。

  template <typename C> static meta_yes testFunctor(C const *,typename enable_if<(sizeof(return_ptr<C>()->operator()())>0)>::type * = 0);
  

更新8/25 - &gt; “typename enable_if”是否导致这个?

0 个答案:

没有答案