[Dwarf-Discuss] C++11 local types as template arguments

Jason Merrill jason@redhat.com
Thu May 3 21:10:34 GMT 2012


The C++11 standard allows types with no linkage such as function-local 
classes to be used as template arguments.  This complicates partitioning 
function debug info into a separate compilation unit, as nothing else 
would require a symbolic reference into the function info.  To avoid 
this, I want to leave the type info out of the function unit, but it 
will need a function skeleton to live in for proper scoping.

One solution to this would be to force an abstract/complete split for 
affected functions even if they are not inline.  But not everything in 
the abstract function needs to move out of the function unit; it would 
be nice if I could just move the type to a function declaration in the 
main CU.  I can't seem to find a rule against this, does it seem 
reasonable to other people?

Jason




More information about the Dwarf-discuss mailing list