https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94845
--- Comment #9 from robert at ocallahan dot org
---
That makes sense ... well, except implementing a full C++ parser and
reserializer is horrific.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94845
--- Comment #7 from robert at ocallahan dot org
---
So gdb reads DW_AT_name "func", parses it, reserializes it to
"func", and uses that?
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81932
--- Comment #30 from robert at ocallahan dot org
---
(In reply to Xi Ruoyao from comment #27)
> Yes. Could GDB search the symbol with linkage name?
This might work for function names but if you're trying to look up a type name
(e.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81932
robert at ocallahan dot org changed:
What|Removed |Added
CC||robert at ocallahan dot
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94845
--- Comment #5 from robert at ocallahan dot org
---
We do our best to consume what g++ produces, but in the situation of comment #1
that is difficult. Whether or not it's "correct DWARF" is really irrelevant;
not matching the d
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94845
--- Comment #1 from robert at ocallahan dot org
---
One case where this causes problems is implementing a debugger where you want
to be able to evaluate expressions containing type names. Type names containing
template type parameters that are
IRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: robert at ocallahan dot org
Target Milestone: ---
Example:
template void func(T s) {}
int main(void) {
func(-1);
return 0;
}
$ g++ -g -o ~/tmp/test ~/tmp/te
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: robert at ocallahan dot org
Target Milestone: ---
Testcase:
#include
template void func(T s) {
if (s < 0) {
puts("WHAT");
}
}
typedef long unsigned Foo;
: debug
Assignee: unassigned at gcc dot gnu.org
Reporter: robert at ocallahan dot org
Target Milestone: ---
Compiling the following test program with `gcc -g -O2 -o ~/tmp/test
~/tmp/test.cpp`, `gcc (GCC) 9.1.1 20190503 (Red Hat 9.1.1-1)`
volatile char volatile_store;
struct X