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

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

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

commit r10-7037-gfebfe87d80c5bc8afd9038136ae7c09910a0d883
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Thu Mar 5 09:12:44 2020 +0100

    print-rtl: Fix printing of CONST_STRING in DEBUG_INSNs [PR93399]

    The following testcase fails to assemble, as CONST_STRING in the
DEBUG_INSNs
    is printed as is, so if it contains \n and/or \r, we are in trouble:
            .loc 1 14 3
            # DEBUG haystack => [si]
            # DEBUG needle => "
    "
    In the gimple dumps we print those (STRING_CSTs) as
      # DEBUG haystack => D#1
      # DEBUG needle => "\n"
    so this patch uses what we use in tree printing for the CONST_STRINGs too.

    2020-03-05  Jakub Jelinek  <ja...@redhat.com>

        PR middle-end/93399
        * tree-pretty-print.h (pretty_print_string): Declare.
        * tree-pretty-print.c (pretty_print_string): Remove forward
        declaration, no longer static.  Change nbytes parameter type
        from unsigned to size_t.
        * print-rtl.c (print_value) <case CONST_STRING>: Use
        pretty_print_string and for shrink way too long strings.

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

Reply via email to