[cfe-dev] Use of '\01' prefix' in symbols ?
    Nat! via cfe-dev 
    cfe-dev at lists.llvm.org
       
    Thu Jul 14 03:59:46 PDT 2016
    
    
  
Some of the linker strings are apparently prefixed with \01. I assume 
this is some sort of escaping mechanism to prevent mangling or demangling.
```
void CGDebugInfo::EmitFunctionDecl(GlobalDecl GD, SourceLocation Loc,
                                    QualType FnType) {
...
   // the mangled name of the enclosing function.
   if (!name.empty() && name[0] == '\01')
     name = name.substr(1);
```
So is it harmless to prefix everything (non C++) with '\01' or are there
reasons not to ? For example in CGObjCMac.cpp everything starting with 
"l_OBJC_" is prefixed with '\01' where as symbols prefixed with 'OBJC_' 
are not.
Ciao
    Nat!
    
    
More information about the cfe-dev
mailing list