http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60354

            Bug ID: 60354
           Summary: fails to demangle _Z3fooIPUlvE_EvT_
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: rguenth at gcc dot gnu.org

auto gf = []() {};
auto gfp = &gf;
template<typename T> void foo(T f) { (*f)(); }
int main(void) {
    foo(gfp);
    auto lf = []() {};
    auto lfp = &lf;
    foo(lfp);
}

generates, with -std=c++11

> nm -C a.out | grep foo
0000000000400624 t _Z3fooIPUlvE_EvT_
000000000040063e t void foo<main::{lambda()#1}*>(main::{lambda()#1}*)

which raises the question if that symbol is 1) correctly mangled, 2) the
demangler fails to handle it

Reply via email to