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

--- Comment #6 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by James K. Lowden <[email protected]>:

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

commit r17-2178-gda2385e53a08b59db6769eef93199a7fdd0ee00f
Author: James K. Lowden <[email protected]>
Date:   Sun Jul 5 14:32:08 2026 -0400

    cobol: Correct "included from" location.

    When an error occurred in a copybook, the diagnostic reported the
    location of the COPY directive incorrectly.  It now reports the
    line of the directive.

    The symbol table was recording paragraph/section relationships
    incorrectly, which was only a problem if the last section PERFORMed.
    Corrected.

    Fixes PR #33 Fixes RT 3569.

    gcc/cobol/ChangeLog:

            * cbldiag.h (struct cbl_loc_t): Add as_first_line() function.
            (location_dump): Shorten diagnostic message.
            * cdf-copy.cc (copybook_elem_t::open_file): Same.
            * copybook.h (class copybook_t): Remove debug message.
            * lexio.cc (parse_copy_directive): Clarify comment.
            (cdftext::lex_open): Set please_push_filename boolean for
open_input.
            (cdftext::open_input): Issue push directive where COPY appeared.
            (cdftext::output_push_directive): New function.
            (cdftext::process_file): Relocate PUSH/POP directives.
            * lexio.h (class cdftext): Add please_push_filename and
output_push_directive().
            * parse.y: Improve PERFORM diagnostics.
            * parse_ante.h (ast_enter_exit_section): Correct paragraph section
ancestor.
            * scan.l: Update gcc location for PUSH directive.
            * symbols.cc (cbl_perform_tgt_t::recurses): New validation
function.
            * symbols.h (struct cbl_perform_tgt_t): Same.
            * util.cc (cobol_filename): Clarify diagnostic message.
            (gcc_location_set_impl): Remove function.
            (gcc_location_set): Implement directly.
            (gcc_location_dump): Add newline to output.

Reply via email to