Wandbox
SettingsLog
SettingsLog
Language
GitHubLogin
Ran/Viewed Log

Author

anonymous

about 8 years ago

Language

Compiler

Options

Author

anonymous

about 8 years ago

$
prog.cc: In instantiation of 'struct Test<int>':
prog.cc:35:15:   required from here
prog.cc:24:88: error: ambiguous template instantiation for 'struct Base<int, void, false>'
 template< typename T, typename F = void, bool I = ::std::is_class< T >::value > struct Test:
                                                                                        ^~~~
prog.cc:6:39: note: candidates are: template<class T, bool I> struct Base<T, void, I> [with T = int; bool I = false]
 template< typename T, bool I > struct Base< T, void, I > {
                                       ^~~~~~~~~~~~~~~~~~
prog.cc:18:43: note:                 template<class T, class F> struct Base<T, F, false> [with T = int; F = void]
 template< typename T, typename F > struct Base< T, F, false > {
                                           ^~~~~~~~~~~~~~~~~~~
prog.cc:24:88: error: invalid use of incomplete type 'struct Base<int, void, false>'
 template< typename T, typename F = void, bool I = ::std::is_class< T >::value > struct Test:
                                                                                        ^~~~
prog.cc:4:51: note: declaration of 'struct Base<int, void, false>'
 template< typename T, typename F, bool I > struct Base;
                                                   ^~~~
prog.cc: In function 'int main()':
prog.cc:35:15: warning: unused variable 't1' [-Wunused-variable]
   Test< int > t1;
               ^~
Exit Code:
1