[LLVMdev] type system rewrite terminology

Chris Lattner clattner at apple.com
Thu Aug 11 10:31:44 PDT 2011


Hi James,

Sorry I missed this.  Please send things to the list, not to me directly.

On Jul 20, 2011, at 9:52 PM, james woodyatt wrote:
> One thing that springs to mind after reading the <http://nondot.org/sabre/LLVMNotes/TypeSystemRewrite.txt> note is that the vocabulary seems a bit confusing.
> 
>> This argues for terminology along the lines of:
>> 
>>  Named structs.
>>  Unnamed structs (named structs with no names)
>>  Anonymous structs (things like complex, which cannot be cyclic)
> 
> 
> Unnamed vs. Anonymous... yeesh.  Plus: "named structures with no names" is almost pure word salad.  I mean, I get that identifiers in LLVM come in "named" and "unnamed" flavors.  Still, to someone coming into LLVM for the first time, this will be pretty brain-scroodling.  I haven't looked at the trunk branch to see what you actually wrote, but I sure hope you settled on something more coherent.  If it's just a matter of tweaking the documentation, then here's what I would propose:
> 
>  - "Named" structure type variables, e.g. %struct.foo
>  - "Unnamed" structures type variables, e.g. %3
>  - "Literal" structure type expressions, e.g. { double, double }

I like this! It is much better than the names I came up with.  Any objections?  If not, I'll try to find time in the next couple weeks to "change the world" again to use these names.

-Chris




More information about the llvm-dev mailing list