template<bool b = 2> void foo(void) {}
template void foo();
template<unsigned char n = 258> void bar(void) {}
template void bar();
GCC foo < doğru başlatır> ve < 2> bar; Clang her ikisi de "hata: tip olmayan şablon argümanı 2 ile değerlendirir, bu da" bool "[-WC++ 11-daraltma] 'türüne göre daraltılamaz.Aralık dışı şablon parametrelerinde beklenen davranış?
Yukarıdaki kod geçerli mi? Bu onlardan birinde bir böcek mi? kullanılan
Versiyonlar: Clang 3.8.0-2ubuntu4 GCC 5.4.0 20.160.609 (~ 16.04.2 Ubuntu 5.4.0-6ubuntu1)