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

--- Comment #3 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jose E. Marchesi <[email protected]>:

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

commit r16-6861-gf89e3c8acdc3a0e12aa8eaaec1bc9c67ea6fde98
Author: Jose E. Marchesi <[email protected]>
Date:   Sat Jan 17 21:56:20 2026 +0100

    a68: add explicative comment to are_packs_equivalent

    While fixing PR algol68/123653 I noticed that there was a struct mode
    interned in the compiler with the form `struct (ref int)'.  This is
    odd because fields are supposed to have names in struct modes.

    Turns out that the culprit is:

        (void) a68_add_mode_to_pack (&z, M_REF_INT, NO_TEXT, NO_NODE);

        EQUIVALENT (M_SEMA) = a68_add_mode (&TOP_MOID (&A68_JOB),
                                            STRUCT_SYMBOL,
                                            a68_count_pack_members (z),
                                            NO_NODE, NO_MOID, z);

    i.e. it is the standard mode `sema'.  The report says that it is a
    struct that hold a reference to int within, but you are not allowed to
    access it.

    This patch adds a comment to are_packs_equivalent explaining why the
    name of a pack may be NULL.

    Signed-off-by: Jose E. Marchesi <[email protected]>

    gcc/algol68/ChangeLog

            * a68-parser-moids-equivalence.cc (are_packs_equivalent): Add
            explicative comment.

Reply via email to