https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116441

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> ---
#include <iostream>

struct [[nodiscard]] GccFailedNoDiscard1 {};
struct GccFailedNoDiscard2 { [[nodiscard]] GccFailedNoDiscard2() = default;};
template<class T> struct [[nodiscard]] GccFailedNoDiscard3 {};

struct GccOKNoDiscard1 { [[nodiscard]] GccOKNoDiscard1() {}};
template<class T> struct GccOKNoDiscard2 {
    [[nodiscard]] GccOKNoDiscard2() {}};

int main() {
    GccFailedNoDiscard1 {};
    GccFailedNoDiscard2 {};
    GccFailedNoDiscard3<void> {};
    GccOKNoDiscard1 {};
    GccOKNoDiscard2<void> {};
}

Reply via email to