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

--- Comment #13 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Florian Weimer <f...@gcc.gnu.org>:

https://gcc.gnu.org/g:9715c545d33b3a32ddc1ae817ba9356ade1fb9df

commit r14-6037-g9715c545d33b3a32ddc1ae817ba9356ade1fb9df
Author: Florian Weimer <fwei...@redhat.com>
Date:   Fri Dec 1 08:10:13 2023 +0100

    c: Turn -Wincompatible-pointer-types into a permerror

    The change to build_conditional_expr drops the downgrade
    from a pedwarn to warning for builtins for C99 and later
    language dialects.  It remains a warning in C89 mode (not
    a permerror), as the -std=gnu89 -fno-permissive test shows.

    gcc/

            * doc/invoke.texi (Warning Options): Document changes.

    gcc/c/

            PR c/96284
            * c-typeck.cc (build_conditional_expr): Upgrade most pointer
            type mismatches to a permerror.
            (convert_for_assignment): Use permerror_opt and
            permerror_init for OPT_Wincompatible_pointer_types warnings.

    gcc/testsuite/

            * gcc.dg/permerror-default.c (incompatible_pointer_types):
            Expect new permerror.
            * gcc.dg/permerror-gnu89-nopermissive.c
            (incompatible_pointer_types): Likewise.
            * gcc.dg/permerror-pedantic.c (incompatible_pointer_types):
            Likewise.
            * gcc.dg/permerror-system.c: Likewise.
            * gcc.dg/Wincompatible-pointer-types-2.c: Compile with
            -fpermissive due to expected errors.
            * gcc.dg/Wincompatible-pointer-types-5.c: New test.  Copied
            from gcc.dg/Wincompatible-pointer-types-2.c.  Expect errors.
            * gcc.dg/anon-struct-11.c: Compile with -fpermissive
            due to expected errors.
            * gcc.dg/anon-struct-11a.c: New test.  Copied from
            gcc.dg/anon-struct-11.c.  Expect errors.
            * gcc.dg/anon-struct-13.c: Compile with -fpermissive
            due to expected errors.
            * gcc.dg/anon-struct-13a.c: New test.  Copied from
            gcc.dg/anon-struct-13.c.  Expect errors.
            * gcc.dg/builtin-arith-overflow-4.c: Compile with -fpermissive
            due to expected errors.
            * gcc.dg/builtin-arith-overflow-4a.c: New test.  Copied from
            gcc.dg/builtin-arith-overflow-4.c.  Expect errors.
            * gcc.dg/c23-qual-4.c: Expect -Wincompatible-pointer-types errors.
            * gcc.dg/dfp/composite-type.c: Compile with -fpermissive
            due to expected errors.
            * gcc.dg/dfp/composite-type-2.c: New test.  Copied from
            gcc.dg/dfp/composite-type.c.  Expect errors.
            * gcc.dg/diag-aka-1.c: Compile with -fpermissive
            due to expected errors.
            * gcc.dg/diag-aka-1a.c: New test.  Copied from
            gcc.dg/diag-aka-1a.c.  Expect errors.
            * gcc.dg/enum-compat-1.c: Compile with -fpermissive
            due to expected errors.
            * gcc.dg/enum-compat-2.c: New test.  Copied from
            gcc.dg/enum-compat-1.c.  Expect errors.
            * gcc.dg/func-ptr-conv-1.c: Compile with -fpermissive
            due to expected errors.
            * gcc.dg/func-ptr-conv-2.c: New test.  Copied from
            gcc.dg/func-ptr-conv-1.c.  Expect errors.
            * gcc.dg/init-bad-7.c: Compile with -fpermissive
            due to expected errors.
            * gcc.dg/init-bad-7a.c: New test.  Copied from gcc.dg/init-bad-7.c.
            Expect errors.
            * gcc.dg/noncompile/incomplete-3.c (foo): Expect
            -Wincompatible-pointer-types error.
            * gcc.dg/param-type-mismatch-2.c (test8): Likewise.
            * gcc.dg/pointer-array-atomic.c: Compile with -fpermissive
            due to expected errors.
            * gcc.dg/pointer-array-atomic-2.c: New test.  Copied from
            gcc.dg/pointer-array-atomic.c.  Expect errors.
            * gcc.dg/pointer-array-quals-1.c (test): Expect
            -Wincompatible-pointer-types errors.
            * gcc.dg/transparent-union-1.c: Compile with -fpermissive
            due to expected errors.
            * gcc.dg/transparent-union-1a.c: New test.  Copied from
            gcc.dg/transparent-union-1.c.  Expect errors.
            * gcc.target/aarch64/acle/memtag_2a.c
            (test_memtag_warning_return_qualifier): Expect additional
            errors.
            * gcc.target/aarch64/sve/acle/general-c/load_2.c (f1): Likewise.
            * gcc.target/aarch64/sve/acle/general-c/load_ext_gather_offset_1.c
            (f1): Likewise.
            * gcc.target/aarch64/sve/acle/general-c/load_ext_gather_offset_2.c
            (f1): Likewise.
            * gcc.target/aarch64/sve/acle/general-c/load_ext_gather_offset_3.c
            (f1): Likewise.
            * gcc.target/aarch64/sve/acle/general-c/load_ext_gather_offset_4.c
            (f1): Likewise.
            * gcc.target/aarch64/sve/acle/general-c/load_ext_gather_offset_5.c
            (f1): Likewise.
            *
gcc.target/aarch64/sve/acle/general-c/load_ext_gather_offset_restricted_1.c
            (f1): Likewise.
            *
gcc.target/aarch64/sve/acle/general-c/load_ext_gather_offset_restricted_2.c
            (f1): Likewise.
            *
gcc.target/aarch64/sve/acle/general-c/load_ext_gather_offset_restricted_3.c
            (f1): Likewise.
            *
gcc.target/aarch64/sve/acle/general-c/load_ext_gather_offset_restricted_4.c
            (f1): Likewise.
            * gcc.target/aarch64/sve/acle/general-c/sizeless-1.c (f1):
Likewise.
            * gcc.target/aarch64/sve/acle/general-c/sizeless-2.c (f1):
Likewise.
            * gcc.target/aarch64/sve/acle/general-c/store_1.c (f1): Likewise.
            * gcc.target/aarch64/sve/acle/general-c/store_2.c (f1): Likewise.
            * gcc.target/aarch64/sve/acle/general-c/store_scatter_index_1.c
            (f1): Likewise.
            *
gcc.target/aarch64/sve/acle/general-c/store_scatter_index_restricted_1.c
            (f1): Likewise.
            * gcc.target/aarch64/sve/acle/general-c/store_scatter_offset_2.c
            (f1): Likewise.
            *
gcc.target/aarch64/sve/acle/general-c/store_scatter_offset_restricted_1.c
            (f1): Likewise.
            * gcc.target/aarch64/sve/acle/general/attributes_7.c
            (f1): Likewise.
            * gcc.target/i386/sse2-bfloat16-scalar-typecheck.c (footest):
            Expect -Wincompatible-pointer-types errors.
            * gcc.target/i386/vect-bfloat16-typecheck_1.c (footest): Likewise.
            * gcc.target/i386/vect-bfloat16-typecheck_2.c (footest): Likewise.

Reply via email to