annotate ir/irtype.h @ 797:340acf1535d0

Removed KDevelop3 project files, CMake can generate them just fine! Fixed function literals in static initializers. Changed alignment of delegates from 2*PTRSIZE to just PTRSIZE. Changed errors to go to stderr instead of stdout. Fairly major rewriting of struct/union/class handling, STILL A BIT BUGGY !!!
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Sat, 29 Nov 2008 21:25:43 +0100
parents eef8ac26c66c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
664
eef8ac26c66c Some missed LLVMDC -> LDC.
Christian Kamm <kamm incasoftware de>
parents: 194
diff changeset
1 #ifndef LDC_IR_IRTYPE_H
eef8ac26c66c Some missed LLVMDC -> LDC.
Christian Kamm <kamm incasoftware de>
parents: 194
diff changeset
2 #define LDC_IR_IRTYPE_H
158
287540c5f05e [svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff changeset
3
173
db9890b3fb64 [svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents: 158
diff changeset
4 #include <set>
158
287540c5f05e [svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff changeset
5
287540c5f05e [svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff changeset
6 namespace llvm {
287540c5f05e [svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff changeset
7 class PATypeHolder;
287540c5f05e [svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff changeset
8 }
287540c5f05e [svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff changeset
9
287540c5f05e [svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff changeset
10 struct IrType
287540c5f05e [svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff changeset
11 {
173
db9890b3fb64 [svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents: 158
diff changeset
12 static std::set<IrType*> list;
db9890b3fb64 [svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents: 158
diff changeset
13 static void resetAll();
db9890b3fb64 [svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents: 158
diff changeset
14
db9890b3fb64 [svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents: 158
diff changeset
15 // overload all of these to make sure
db9890b3fb64 [svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents: 158
diff changeset
16 // the static list is up to date
db9890b3fb64 [svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents: 158
diff changeset
17 IrType();
db9890b3fb64 [svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents: 158
diff changeset
18 IrType(const IrType& s);
db9890b3fb64 [svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents: 158
diff changeset
19 ~IrType();
db9890b3fb64 [svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents: 158
diff changeset
20
db9890b3fb64 [svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents: 158
diff changeset
21 void reset();
db9890b3fb64 [svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents: 158
diff changeset
22
158
287540c5f05e [svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff changeset
23 llvm::PATypeHolder* type;
287540c5f05e [svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff changeset
24 };
287540c5f05e [svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff changeset
25
287540c5f05e [svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff changeset
26 #endif