On Fri, Oct 18, 2013 at 10:39 AM, Jason Merrill <ja...@redhat.com> wrote: > On 10/11/2013 01:59 PM, Dehao Chen wrote: >> >> It's hard to get a testcase without >> http://gcc.gnu.org/viewcvs/gcc?view=revision&revision=201856 because >> none of these *INTERNAL* symbols will be emitted in debug info. > > > Why does that change cause one of these symbols to be emitted? As Cary > says, that was done as an assertion. If you're invalidating the assertion, > I need more explanation as to why.
Sorry, pointed to the incorrect patch, it should be http://gcc.gnu.org/viewcvs/gcc?view=revision&revision=201858 These symbols will not be emitted in the symbol table in assembly, but they will be emitted in the debug_info after http://gcc.gnu.org/viewcvs/gcc?view=revision&revision=201858, which emits function's linkage name in debug_info even when it's abstract. The *INTERNAL* assertion I removed is an over-assertion that not only assert for symbol table, but also for debug info. Thanks, Dehao > > Jason >