[Bug symtab/23010] New: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

classic Classic list List threaded Threaded
28 messages Options
12
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] New: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

            Bug ID: 23010
           Summary: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE
                    (dict)->la_language
           Product: gdb
           Version: unknown
            Status: NEW
          Severity: normal
          Priority: P2
         Component: symtab
          Assignee: unassigned at sourceware dot org
          Reporter: keiths at redhat dot com
  Target Milestone: ---

A Fedora user reported a bug with the listed assertion.  A reproducer is
specified there by Jan.

https://bugzilla.redhat.com/show_bug.cgi?id=1560010

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

Jan Kratochvil <jan.kratochvil at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jan.kratochvil at redhat dot com
            Version|unknown                     |8.1
   Target Milestone|---                         |8.1.1
            Summary|Assertion: SYMBOL_LANGUAGE  |Regression: Assertion:
                   |(sym) == DICT_LANGUAGE      |SYMBOL_LANGUAGE (sym) ==
                   |(dict)->la_language         |DICT_LANGUAGE
                   |                            |(dict)->la_language

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

--- Comment #1 from Jan Kratochvil <jan.kratochvil at redhat dot com> ---
The regression is:
PASS: gdb-8.0
FAIL: gdb-8.1

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

Tom Tromey <tromey at sourceware dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |tromey at sourceware dot org

--- Comment #2 from Tom Tromey <tromey at sourceware dot org> ---
See https://sourceware.org/ml/gdb-patches/2018-04/msg00234.html

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

--- Comment #3 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Tom Tromey <[hidden email]>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=58f0c71853f98afe623ab89c4362682885905ebb

commit 58f0c71853f98afe623ab89c4362682885905ebb
Author: Tom Tromey <[hidden email]>
Date:   Thu Apr 12 08:24:41 2018 -0600

    Fix for dwz-related crash

    PR symtab/23010 reports a crash that occurs when using -readnow
    on a dwz-generated debuginfo file.

    The crash occurs because the DWARF has a partial CU with no language
    set, and then a full CU that references this partial CU using
    DW_AT_abstract_origin.

    In this case, the partial CU is read by dw2_expand_all_symtabs using
    language_minimal; but then this conflicts with the creation of the
    block's symbol table in the C++ CU.

    This patch fixes the problem by arranging for partial CUs not to be
    read by -readnow.  I tend to think that it doesn't make sense to read
    a partial CU in isolation -- they should only be read when imported
    into some other CU.

    In conjunction with some other patches I am going to post, this also
    fixes the Rust -readnow crash that Jan reported.

    There are two problems with this patch:

    1. It is difficult to reason about.  There are many cases where I've
       patched the code to call init_cutu_and_read_dies with the flag set
       to "please do read partial units" -- but I find it difficult to be
       sure that this is always correct.

    2. It is still missing a standalone test case.  This seemed hard.

    2018-05-17  Tom Tromey  <[hidden email]>

        PR symtab/23010:
        * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
        (dw2_instantiate_symtab): Add skip_partial parameter.
        (dw2_find_last_source_symtab, dw2_map_expand_apply)
        (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
        (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
        (dw2_expand_symtabs_matching_one)
        (dw2_find_pc_sect_compunit_symtab)
        (dw2_debug_names_lookup_symbol)
        (dw2_debug_names_expand_symtabs_for_function): Update.
        (init_cutu_and_read_dies): Add skip_partial parameter.
        (process_psymtab_comp_unit, build_type_psymtabs_1)
        (process_skeletonless_type_unit, load_partial_comp_unit)
        (psymtab_to_symtab_1): Update.
        (load_full_comp_unit): Add skip_partial parameter.
        (process_imported_unit_die, dwarf2_read_addr_index)
        (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
        (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
        (read_signatured_type): Update.

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

Tom Tromey <tromey at sourceware dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED
           Assignee|unassigned at sourceware dot org   |tromey at sourceware dot org
   Target Milestone|8.1.1                       |8.2

--- Comment #4 from Tom Tromey <tromey at sourceware dot org> ---
Fixed on trunk; there's still discussion about whether to
backport to 8.1.1.

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

nolange79 at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |nolange79 at gmail dot com

--- Comment #5 from nolange79 at gmail dot com ---
Created attachment 11069
  --> https://sourceware.org/bugzilla/attachment.cgi?id=11069&action=edit
program that causes the issue

With the fix applied, I still get the error, so this does not seem solved.
Can not manage to narrow it down, seems to involve gcc 8 + LTO atleast.
The file does run on debian, needs lttng-ust library.

Running the line below causes the trouble:

gdb  -ex 'p sizeof (void*)' netfilter

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

--- Comment #6 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Keith Seitz <[hidden email]>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=380618d68a2b4ee60cebf3941d11a5af4e0aeee0

commit 380618d68a2b4ee60cebf3941d11a5af4e0aeee0
Author: Keith Seitz <[hidden email]>
Date:   Tue Jul 24 12:48:58 2018 -0700

    Set CU language before processing any DIEs (symtab/23010 et al)

    This patch is another attempt at really fixing the multitude of assertions
    being seen where symbols of one language are being added to symbol lists of
    another language.

    In this specific case, the backtrace command (thread apply all bt full)
that
    is looking for the compunit containing the PC of the thread. That calls
    get_prev_frame several times. This function calls (eventually)
    dwarf2_frame_prev_register. That eventually ends up calling
    find_pc_compunit_symtab.

    In this function (find_pc_sect_compunit_symtab actually), we loop over all
    compunits, calling the "quick" function dw2_find_pc_sect_compunit_symtab.
    That function calls dw2_instantiate_symtab to read in all the CU's symbols.
    Now the fun begins.

    dw2_do_instantiate_symtab queues the per_cu for reading, using a default
    "pretend" language of language_minimal with the expectation that this will
    be set later.

    The DIEs of this (only queued) CU are then processed.

    The first DIE is DW_TAG_compile_unit. That's handled by read_file_scope.

    (Nearly) The first thing read_file_scope does is:

      get_scope_pc_bounds (die, &lowpc, &highpc, cu);

    This function loops over the children of the current DIE (a compile_unit),
    looking for bounds. The first such child is a subprogram, and we attempt to
    get its bounds. We use dwarf2_attr to get at DW_AT_high_pc.

    This subprogram has DW_AT_specification set, so dwarf_attr (via
    follow_die_ref/follow_die_offset) will follow that, but follow_die_offset
    *also* attempts to load the containing CU for the spec DIE. That spec DIE
    lives inside a CU that is a partial_unit and has no language attribute. So
    it simply inherits the language from the CU that elicited the read. [That
    all happens in follow_die_offset.]

    The original CU's language is still language_minimal -- we haven't gotten
to
    the line in read_file_scope that actually sets the language yet!

    And that is the cause of these problems. The call to prepare_one_comp_unit
    needs to be the *first* thing that is done when reading a CU so that the
    CU's language can be recorded (and inherited by any referenced
    partial_units).

    Since a test reproducer for this has been so elusive, this patch also adds
a
    wrapper function around add_symbol_to_list which asserts when adding a
    symbol of one language to a list containing symbols of a different
language.

    gdb/ChangeLog:
    2017-07-24  Keith Seitz  <[hidden email]>

            PR symtab/23010
            * dwarf2read.c (dw2_add_symbol_to_list): New function.
            (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
            instead of add_symbol_to_list.
            (read_file_scope): Call prepare_one_comp_unit before reading
            any other DIEs.

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

--- Comment #7 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
The gdb-8.2-branch branch has been updated by Keith Seitz
<[hidden email]>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=9eb8d8e3e025323c9c5566b36c1fdc331aa33132

commit 9eb8d8e3e025323c9c5566b36c1fdc331aa33132
Author: Keith Seitz <[hidden email]>
Date:   Tue Jul 24 12:45:51 2018 -0700

    Set CU language before processing any DIEs (symtab/23010 et al)

    This patch is another attempt at really fixing the multitude of assertions
    being seen where symbols of one language are being added to symbol lists of
    another language.

    In this specific case, the backtrace command (thread apply all bt full)
that
    is looking for the compunit containing the PC of the thread. That calls
    get_prev_frame several times. This function calls (eventually)
    dwarf2_frame_prev_register. That eventually ends up calling
    find_pc_compunit_symtab.

    In this function (find_pc_sect_compunit_symtab actually), we loop over all
    compunits, calling the "quick" function dw2_find_pc_sect_compunit_symtab.
    That function calls dw2_instantiate_symtab to read in all the CU's symbols.
    Now the fun begins.

    dw2_do_instantiate_symtab queues the per_cu for reading, using a default
    "pretend" language of language_minimal with the expectation that this will
    be set later.

    The DIEs of this (only queued) CU are then processed.

    The first DIE is DW_TAG_compile_unit. That's handled by read_file_scope.

    (Nearly) The first thing read_file_scope does is:

      get_scope_pc_bounds (die, &lowpc, &highpc, cu);

    This function loops over the children of the current DIE (a compile_unit),
    looking for bounds. The first such child is a subprogram, and we attempt to
    get its bounds. We use dwarf2_attr to get at DW_AT_high_pc.

    This subprogram has DW_AT_specification set, so dwarf_attr (via
    follow_die_ref/follow_die_offset) will follow that, but follow_die_offset
    *also* attempts to load the containing CU for the spec DIE. That spec DIE
    lives inside a CU that is a partial_unit and has no language attribute. So
    it simply inherits the language from the CU that elicited the read. [That
    all happens in follow_die_offset.]

    The original CU's language is still language_minimal -- we haven't gotten
to
    the line in read_file_scope that actually sets the language yet!

    And that is the cause of these problems. The call to prepare_one_comp_unit
    needs to be the *first* thing that is done when reading a CU so that the
    CU's language can be recorded (and inherited by any referenced
    partial_units).

    Since a test reproducer for this has been so elusive, this patch also adds
a
    wrapper function around add_symbol_to_list which asserts when adding a
    symbol of one language to a list containing symbols of a different
language.

    gdb/ChangeLog:
    2017-07-24  Keith Seitz  <[hidden email]>

            PR symtab/23010
            * dwarf2read.c (dw2_add_symbol_to_list): New function.
            (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
            instead of add_symbol_to_list.
            (read_file_scope): Call prepare_one_comp_unit before reading
            any other DIEs.

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

Lorinczy Zsigmond <lzsiga at freemail dot c3.hu> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |lzsiga at freemail dot c3.hu

--- Comment #8 from Lorinczy Zsigmond <lzsiga at freemail dot c3.hu> ---
I have the same problem on AIX 6, PowerPC, 64-bit, with gdb-8.1.1

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

--- Comment #9 from Keith Seitz <keiths at redhat dot com> ---
(In reply to Lorinczy Zsigmond from comment #8)
> I have the same problem on AIX 6, PowerPC, 64-bit, with gdb-8.1.1

"Target Milestone: 8.2"

The patch is not in 8.1[.x] as far as I know. Please try master or the 8.2
branch.

If the problem persists, I would be very anxious to get my hands on some way to
reproduce this.

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

--- Comment #10 from Lorinczy Zsigmond <lzsiga at freemail dot c3.hu> ---
T(In reply to Keith Seitz from comment #9)

> The patch is not in 8.1[.x] as far as I know. Please try master or the 8.2
> branch.

Hi, thank you for your quick answer. So far, I was not successful dowloading
version 8.2, maybe it is only for developers?

    $ git clone --branch gdb-8.2-branch
ssh://sourceware.org/git/binutils-gdb.git
    Cloning into 'binutils-gdb'...
    [hidden email]: Permission denied (publickey).
    fatal: Could not read from remote repository.

    Please make sure you have the correct access rights
    and the repository exists.

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

Sergio Durigan Junior <sergiodj at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |sergiodj at redhat dot com

--- Comment #11 from Sergio Durigan Junior <sergiodj at redhat dot com> ---
(In reply to Lorinczy Zsigmond from comment #10)

> T(In reply to Keith Seitz from comment #9)
>
> > The patch is not in 8.1[.x] as far as I know. Please try master or the 8.2
> > branch.
>
> Hi, thank you for your quick answer. So far, I was not successful dowloading
> version 8.2, maybe it is only for developers?
>
>     $ git clone --branch gdb-8.2-branch
> ssh://sourceware.org/git/binutils-gdb.git
>     Cloning into 'binutils-gdb'...
>     [hidden email]: Permission denied (publickey).
>     fatal: Could not read from remote repository.
>    
>     Please make sure you have the correct access rights
>     and the repository exists.

Do you have an account on sourceware?  If not, then using ssh:// to clone the
repository will not work.  You should use git://.

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

--- Comment #12 from Lorinczy Zsigmond <lzsiga at freemail dot c3.hu> ---
(In reply to Sergio Durigan Junior from comment #11)
> Do you have an account on sourceware?  If not, then using ssh:// to clone
> the repository will not work.  You should use git://.

Thank you, now I was able compile it. Well, the problem persists, I'll try to
debug it, so far here is some bits I collected:
OS: Aix-6.1; CPU: PowerPC (64-bit, big endian); C-compiler: gcc 4.8.3;
how to provoke the failure: the program-to-be-debugged have to depend on an
external shared object compiled with gcc:

$ gdb ./helloworld
GNU gdb (GDB) 8.1.90.20180803-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "powerpc-ibm-aix6.1.9.0".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./helloworld...done.
dictionary.c:690: internal-error: void insert_symbol_hashed(dictionary*,
symbol*): Assertion `SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE
(dict)->la_language' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n) n

This is a bug, please report it.  For instructions, see:
<http://www.gnu.org/software/gdb/bugs/>.

dictionary.c:690: internal-error: void insert_symbol_hashed(dictionary*,
symbol*): Assertion `SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE
(dict)->la_language' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Create a core file of GDB? (y or n) n
Command aborted.
(gdb) quit

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

Tom Tromey <tromey at sourceware dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |---

--- Comment #13 from Tom Tromey <tromey at sourceware dot org> ---
Reopening, since it's reported as not fixed.

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

--- Comment #14 from Lorinczy Zsigmond <lzsiga at freemail dot c3.hu> ---
Hi, I am still trying to collect information, here is what I have so far:
https://www.linuxquestions.org/questions/aix-43/gdb-8-1-1-versus-aix-4175636082/

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

--- Comment #19 from rdiezmail-binutils at yahoo dot de ---
My scripts run the executable on the target straight away. I did not check how
far GDB got when it asserted. I'll build a new toolchain and try again
tomorrow.

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

rdiezmail-binutils at yahoo dot de changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rdiezmail-binutils at yahoo dot de

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

--- Comment #15 from Lorinczy Zsigmond <lzsiga at freemail dot c3.hu> ---
Well, it's just a wild guess, but my problem might be related with the fact,
that every call of 'start_symtab' in 'xcoffread.c' passes parameter 'language'
as 'language_unknown'

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug symtab/23010] Regression: Assertion: SYMBOL_LANGUAGE (sym) == DICT_LANGUAGE (dict)->la_language

agentzh at gmail dot com
In reply to this post by agentzh at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=23010

--- Comment #16 from Keith Seitz <keiths at redhat dot com> ---
(In reply to Lorinczy Zsigmond from comment #15)
> Well, it's just a wild guess, but my problem might be related with the fact,
> that every call of 'start_symtab' in 'xcoffread.c' passes parameter
> 'language' as 'language_unknown'

That's what the DWARF reader does, too. The problem is that symbols are being
added to the dictionary *before* the real language is read from the debug info.
[For a detailed explanation of what was happening in the DWARF reader, see
comment #7. Something similar *must* be happening here.]

If you can provide me with a reproducer, the GCC compile farm has an s390 box
(or two) that I can use to debug this.

--
You are receiving this mail because:
You are on the CC list for the bug.
12