[llvm] r205358 - Add a comment about the DIDescriptor class hierarchy.

Adrian Prantl aprantl at apple.com
Wed Apr 2 08:56:42 PDT 2014


I guess that happens when you cut&paste something out of an email and your text editor supports UTF-8 :-)

thanks!
fixed in r205428.
-- adrian


On Apr 1, 2014, at 6:21 PM, Robinson, Paul <Paul_Robinson at playstation.sony.com> wrote:

> 
> 
>> -----Original Message-----
>> From: llvm-commits-bounces at cs.uiuc.edu [mailto:llvm-commits-
>> bounces at cs.uiuc.edu] On Behalf Of Adrian Prantl
>> Sent: Tuesday, April 01, 2014 2:04 PM
>> To: llvm-commits at cs.uiuc.edu
>> Subject: [llvm] r205358 - Add a comment about the DIDescriptor class
>> hierarchy.
>> 
>> Author: adrian
>> Date: Tue Apr  1 16:04:24 2014
>> New Revision: 205358
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=205358&view=rev
>> Log:
>> Add a comment about the DIDescriptor class hierarchy.
>> 
>> Modified:
>>    llvm/trunk/include/llvm/IR/DebugInfo.h
>>    llvm/trunk/lib/IR/DebugInfo.cpp
>> 
>> Modified: llvm/trunk/include/llvm/IR/DebugInfo.h
>> URL: http://llvm.org/viewvc/llvm-
>> project/llvm/trunk/include/llvm/IR/DebugInfo.h?rev=205358&r1=205357&r2=2
>> 05358&view=diff
>> ========================================================================
>> ======
>> --- llvm/trunk/include/llvm/IR/DebugInfo.h (original)
>> +++ llvm/trunk/include/llvm/IR/DebugInfo.h Tue Apr  1 16:04:24 2014
>> @@ -197,6 +197,13 @@ typedef DIRef<DIScope> DIScopeRef;
>> typedef DIRef<DIType> DITypeRef;
>> 
>> /// DIScope - A base class for various scopes.
>> +///
>> +/// Although, implementation-wise, DIScope is the parent class of most
>> +/// other DIxxx classes, including DIType and its descendants, most of
>> +/// DIScope’s descendants are not a substitutable subtype of
> 
> Funny character there, that wants to be a simple apostrophe.
> --paulr
> 
>> +/// DIScope. The DIDescriptor::isScope() method only is true for
>> +/// DIScopes that are scopes in the strict lexical scope sense
>> +/// (DICompileUnit, DISubprogram, etc.), but not for, e.g., a DIType.
>> class DIScope : public DIDescriptor {
>> protected:
>>   friend class DIDescriptor;
>> 
>> Modified: llvm/trunk/lib/IR/DebugInfo.cpp
>> URL: http://llvm.org/viewvc/llvm-
>> project/llvm/trunk/lib/IR/DebugInfo.cpp?rev=205358&r1=205357&r2=205358&v
>> iew=diff
>> ========================================================================
>> ======
>> --- llvm/trunk/lib/IR/DebugInfo.cpp (original)
>> +++ llvm/trunk/lib/IR/DebugInfo.cpp Tue Apr  1 16:04:24 2014
>> @@ -429,8 +429,10 @@ static bool fieldIsTypeRef(const MDNode
>> /// Check if a value can be a ScopeRef.
>> static bool isScopeRef(const Value *Val) {
>>   return !Val ||
>> -         (isa<MDString>(Val) && !cast<MDString>(Val)-
>>> getString().empty()) ||
>> -         isa<MDNode>(Val);
>> +    (isa<MDString>(Val) && !cast<MDString>(Val)->getString().empty())
>> ||
>> +    // Not checking for Val->isScope() here, because it would work
>> +    // only for lexical scopes and not all subclasses of DIScope.
>> +    isa<MDNode>(Val);
>> }
>> 
>> /// Check if a field at position Elt of a MDNode can be a ScopeRef.
>> 
>> 
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits





More information about the llvm-commits mailing list