Dear all,
GNU global 6.5.4 has trouble with the following template specialisation snippet:
template <typename T>
struct Foo<typename std::enable_if<sizeof(T) <= 2* sizeof(size_t)>::type>
{};
gtags: failed to parse template [+2 ./foo.cpp].
If I use "<" instead of "<=" it still fails, but it works if I use ">". It's
probably not expecting operator< to appear inside a template.
Cheers,
Lorenz
Full file, valid C++11:
#include <type_traits>
template <typename T, typename Enable = void>
struct Foo{};
template <typename T>
struct Foo<T, typename std::enable_if<(sizeof(T) < 8)>::type>
{};
int main(void) {
Foo<int> foo;
}
- fails on line 7
_______________________________________________
Bug-global mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-global