Geçenlerde böyle koduyla sorun vardı:Derleyici eklemeden önce derleyici otomatik şablon parametresini neden alamıyor?
constexpr auto lambda = []{};
template<auto& l>
struct Lambda {};
template<auto& l>
void test(Lambda<l>) {}
int main() {
test(Lambda<lambda>{});
}
clang Hem ve l
anlamak olamaz GCC söyler. Orada const eklerseniz
Ancak:
// ----v
template<const auto& l>
void test(Lambda<l>) {}
Sonra her şey clang ile çalışır. GCC hala başarısız. Burada neler oluyor?
const
'un kendiliğinden çıkarılamaz mı? Her iki durumda da
l
sonucunu çıkarmamak için bir GCC hatası mı?