Re: Missing DWARF children for variable templates

2023-11-10 Thread Nima Hamidi via Gcc
Another similar issue is with alias templates. The following code: ``` template struct Cls {  using ptr = T *; }; template using Cls_ptr = typename Cls::ptr; Cls_ptr ai; Cls_ptr af; ``` produces ``` < 1><0x0029> DW_TAG_typedef  DW_AT_type <0x003d>  DW_AT_name (indexed string: 0x0

Missing DWARF children for variable templates

2023-11-10 Thread Nima Hamidi via Gcc
Hello all, When I compile ``` template struct Cls {  static const int v = 0; }; template int constexpr Cls_v = Cls::v; int func() {  return Cls_v + Cls_v; } ``` using `g++ -c main.cpp -o main.o -g`, I see two indistinguishable DIEs in the generated debug info: ``` < 1><0x003a> DW_TAG_v

Exporting inline functions

2023-09-25 Thread Nima Hamidi via Gcc
Hello all, Is there any flag that I can pass to gcc to make it generate dynamic symbols for inline functions too? Let’s say I need to lookup an inline function via dlopen and call it. Is there an easy way to achieve this? Thanks!