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

Marek Polacek <mpolacek at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|ASSIGNED                    |RESOLVED

--- Comment #2 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
Implemented:

commit 1f69e63cfcc664fd7382dd877846007652a01dcf
Author: Ed Smith-Rowland <3dw...@verizon.net>
Date:   Tue Feb 2 16:11:57 2021 -0500

    c++: Implement C++23 P0330 - Literal Suffixes for ptrdiff_t and size_t.

    Integer literal suffixes for signed size ('z') and unsigned size
    (some permutation od 'zu') are provided as a language addition.

    gcc/c-family/ChangeLog:

            * c-cppbuiltin.c (c_cpp_builtins): Define __cpp_size_t_suffix.
            * c-lex.c (interpret_integer): Set node type for size literal.

    libcpp/ChangeLog:

            * expr.c (interpret_int_suffix): Detect 'z' integer suffix.
            (cpp_classify_number): Compat warning for use of 'z' suffix.
            * include/cpplib.h (struct cpp_options): New flag.
            (enum cpp_warning_reason): New flag.
            (CPP_N_USERDEF): Comment C++0x -> C++11.
            (CPP_N_SIZE_T): New flag for cpp_classify_number.
            * init.c (cpp_set_lang): Initialize new flag.

    gcc/testsuite/ChangeLog:

            * g++.dg/cpp0x/udlit-shadow-neg.C: Test for 'z' and 'zu' shadowing.
            * g++.dg/cpp23/feat-cxx2b.C: New test.
            * g++.dg/cpp23/size_t-literals.C: New test.
            * g++.dg/warn/Wsize_t-literals.C: New test.

Reply via email to