compilation of the attached c++ source file foo.cpp does not work with g++-4.5.0 but it worked with g++-4.3.3. I have attached the c++ source foo.cpp and the preprocessed file foo.ii)
> g++ -c foo.ii foo.cpp: In member function 'void Eval<T>::eval(mpl_::int_<0>) [with int V = 0, T = Mtrl]': foo.cpp:37:9: instantiated from 'void Eval<T>::eval() [with int V = 0, T = Mtrl]' foo.cpp:60:20: instantiated from here foo.cpp:52:9: error: call of overloaded 'value(Eval<Mtrl>::Wrap<Quan<0> >)' is ambiguous foo.cpp:44:10: note: candidates are: void Eval<T>::value(Eval<T>::Wrap<Quan<V2> >) [with int V = 0, int V2 = 0, T = Mtrl] foo.cpp:47:10: note: void Eval<T>::value(Eval<T>::Wrap<Quan<0> >) [with int V = 0, T = Mtrl] -- Summary: c++ compilation complains about error: call of overloaded Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: mario-baumann at web dot de GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42824