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

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

https://gcc.gnu.org/g:7b88f9b8881b7653b5a834da1b2b8fda463e61c0

commit r12-8432-g7b88f9b8881b7653b5a834da1b2b8fda463e61c0
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Thu May 19 11:56:21 2022 +0200

    pointer-query: Fix ICE with non-pointer param [PR105635]

    The gimple_parm_array_size function comment talks about pointe parameters
    but doesn't actually verify it, it checks whether an attribute is present
    on the function and then just uses TREE_TYPE (TREE_TYPE (var)) which
    assumes a pointer type (or in theory could work for ARRAY_TYPE but
    c-family languages which only have that attribute will never have
ARRAY_TYPE
    parameters; and for VECTOR_TYPE/COMPLEX_TYPE it would mean something quite
    different).

    So, this patch punts early if var doesn't have pointer/reference type.

    2022-05-19  Jakub Jelinek  <ja...@redhat.com>

            PR c/105635
            * pointer-query.cc (gimple_parm_array_size): Return NULL if var
            doesn't have pointer or reference type.

            * gcc.dg/pr105635.c: New test.

    (cherry picked from commit 3b4daa0b3c3d8eb2ac3b40ad6898f314ed4d7919)

Reply via email to