template<bool b = 2> void foo(void) {}
template void foo();
template<unsigned char n = 258> void bar(void) {}
template void bar();
जीसीसी तत्काल foo < सत्य> और बार < 2>; क्लैंग दोनों को "त्रुटि: अस्वीकार करता है: गैर-प्रकार का टेम्पलेट तर्क 2 का मूल्यांकन करता है, जिसे 'बूल' टाइप करने के लिए संकुचित नहीं किया जा सकता है [-WC++ 11-narrowing]"।आउट-ऑफ-रेंज टेम्पलेट पैरामीटर पर अपेक्षित व्यवहार?
क्या उपरोक्त कोड मान्य है? क्या यह उनमें से एक में एक बग है?
संस्करण इस्तेमाल किया: बजना 3.8.0-2ubuntu4, जीसीसी 5.4.0 20,160,609 (उबंटू 5.4.0-6ubuntu1 ~ 16.04.2)