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

--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>:

https://gcc.gnu.org/g:ad52d89808a947264397e920d7483090d4108f7b

commit r12-1043-gad52d89808a947264397e920d7483090d4108f7b
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Tue May 25 17:24:38 2021 +0200

    c++: Avoid -Wunused-value false positives on nullptr passed to ellipsis
[PR100666]

    When passing expressions with decltype(nullptr) type with side-effects to
    ellipsis, we pass (void *)0 instead, but for the side-effects evaluate them
    on the lhs of a COMPOUND_EXPR.  Unfortunately that means we warn about it
    if the expression is a call to nodiscard marked function, even when the
    result is really used, just needs to be transformed.

    Fixed by adding a warning_sentinel.

    2021-05-25  Jakub Jelinek  <ja...@redhat.com>

            PR c++/100666
            * call.c (convert_arg_to_ellipsis): For expressions with
NULLPTR_TYPE
            and side-effects, temporarily disable -Wunused-result warning when
            building COMPOUND_EXPR.

            * g++.dg/cpp1z/nodiscard8.C: New test.
            * g++.dg/cpp1z/nodiscard9.C: New test.

Reply via email to