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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |msebor at gcc dot gnu.org

--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
double E[][l]
argument has an unknown size, so it must be an unknown bound.
Seems the get_parm_access function returns size member as NULL, so the only
thing you can look at is the string which encodes it.  For the above it is:
^1[$ ],$0
and on that because one dimension is incomplete one needs to punt.
If the testcase has:
double E[6][l]
instead, the string is
^1[$6],$0
and in that case perhaps l_1(D) * 6 * sizeof(double) could be used.
In any case, parm_object_size needs to be much more careful on when exactly it
can use this stuff safely.
CCing Martin as the author of this stuff.

Reply via email to