I'm having a problem using glm with CDT and I reduced it to this test case:
test.hpp:
#include <iostream>
template<template<typename> class T>
void thisFails (T<bool> t) {
std::cout << "CDT won't compile this" << std::endl;
}
main.cpp:
#include "test.hpp"
template<template<typename> class T>
void thisWorks (T<bool> t) {
std::cout << "This is fine" << std::endl;
}
template <class T>
class Dummy {
};
int main() {
Dummy<bool> d;
thisFails(d);
thisWorks(d);
}
ThisWorks is just thisFails pasted into the cpp file. MinGW will compile and run this on the command line, but CDT using the same MinGW installation chokes on thisFails, saying "Invalid arguments 'Candidates are: void thisFails(?)'". There are also some boxes that look like unprintable characters.
Does anyone know what's going on here? Is it a problem with CDT or my configuration? This is on CDT 8.1, MinGW 4.7.1, and Windows XP SP3.