Geçen gün bazı metaprogramlama yaparken garip bir şeyle karşılaştım. Temelde bu iddiayı aşağıya (beklediğim gibi) geçmiyor.
static_assert(std::is_same_v<void(), std::remove_reference_t<void()&>>);
İlk başta bir işlev referansı tanımlayan sözdizimsel bir hata yaptığımı sanıyordum, ancak bu iddia geçerliliğini koruyor.
static_assert(std::is_same_v<void()&, void()&>);
Ayrıca remove_reference
cppreference kaynak kopyalamak kendimi uygulamayı denedim ama bu da işe yaramadı. Burada neler oluyor?