annotate dmd/backend/STR.d @ 0:10317f0c89a5

Initial commit
author korDen
date Sat, 24 Oct 2009 08:42:06 +0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
1 module dmd.backend.STR;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
2
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
3 enum STR
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
4 {
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
5 STRanonymous = 0x01, // set for unions with no tag names
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
6 STRglobal = 0x02, // defined at file scope
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
7
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
8 STRnotagname = 0x04, // struct/class with no tag name
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
9 STRoutdef = 0x08, // we've output the debug definition
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
10 STRbitfields = 0x10, // set if struct contains bit fields
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
11 STRpredef = 0x1000, // a predefined struct
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
12 STRunion = 0x4000, // actually, it's a union
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
13
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
14 STRabstract = 0x20, // abstract class
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
15 STRbitcopy = 0x40, // set if operator=() is merely a bit copy
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
16 STRanyctor = 0x80, // set if any constructors were defined
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
17 // by the user
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
18 STRnoctor = 0x100, // no constructors allowed
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
19 STRgen = 0x200, // if struct is an instantiation of a
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
20 // template class, and was generated by
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
21 // that template
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
22 STRvtblext = 0x400, // generate vtbl[] only when first member function
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
23 // definition is encountered (see Fvtblgen)
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
24 STRexport = 0x800, // all member functions are to be _export
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
25 STRclass = 0x8000, // it's a class, not a struct
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
26 ///version (TX86) {
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
27 STRimport = 0x40000, // imported class
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
28 STRstaticmems = 0x80000, // class has static members
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
29 ///}
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
30 STR0size = 0x100000, // zero sized struct
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
31 STRinstantiating = 0x200000, // if currently being instantiated
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
32 STRexplicit = 0x400000, // if explicit template instantiation
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
33 STRgenctor0 = 0x800000, // need to gen X::X()
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
34 }