[llvm-commits] CVS: llvm/include/llvm/AbstractTypeUser.h Instruction.h Module.h Pass.h Value.h iPHINode.h

Chris Lattner lattner at cs.uiuc.edu
Tue Jun 8 12:49:01 PDT 2004


Changes in directory llvm/include/llvm:

AbstractTypeUser.h updated: 1.19 -> 1.20
Instruction.h updated: 1.54 -> 1.55
Module.h updated: 1.44 -> 1.45
Pass.h updated: 1.43 -> 1.44
Value.h updated: 1.50 -> 1.51
iPHINode.h updated: 1.17 -> 1.18

---
Log message:

Apparently a particular vendor compiler uses the struct/class tag to MANGLE
symbols with.  Therefore, if you do not use struct/class consistently, you can
get LINK ERRORS.  grr.

This fixes the link errors for libsupport and vmcore.

-Chris



---
Diffs of the changes:  (+7 -7)

Index: llvm/include/llvm/AbstractTypeUser.h
diff -u llvm/include/llvm/AbstractTypeUser.h:1.19 llvm/include/llvm/AbstractTypeUser.h:1.20
--- llvm/include/llvm/AbstractTypeUser.h:1.19	Thu Feb 26 01:24:08 2004
+++ llvm/include/llvm/AbstractTypeUser.h	Tue Jun  8 12:44:21 2004
@@ -39,7 +39,7 @@
 
 namespace llvm {
 
-class Type;
+struct Type;
 class DerivedType;
 
 class AbstractTypeUser {


Index: llvm/include/llvm/Instruction.h
diff -u llvm/include/llvm/Instruction.h:1.54 llvm/include/llvm/Instruction.h:1.55
--- llvm/include/llvm/Instruction.h:1.54	Mon Jun  7 12:53:43 2004
+++ llvm/include/llvm/Instruction.h	Tue Jun  8 12:44:21 2004
@@ -20,7 +20,7 @@
 
 namespace llvm {
 
-class AssemblyAnnotationWriter;
+struct AssemblyAnnotationWriter;
 
 template<typename SC> struct ilist_traits;
 template<typename ValueSubClass, typename ItemParentClass, typename SymTabClass,


Index: llvm/include/llvm/Module.h
diff -u llvm/include/llvm/Module.h:1.44 llvm/include/llvm/Module.h:1.45
--- llvm/include/llvm/Module.h:1.44	Fri Mar 12 13:51:16 2004
+++ llvm/include/llvm/Module.h	Tue Jun  8 12:44:21 2004
@@ -43,7 +43,8 @@
   static iplist<GlobalVariable> &getList(Module *M);
 };
 
-struct Module {
+class Module {
+public:
   typedef iplist<GlobalVariable> GlobalListType;
   typedef iplist<Function> FunctionListType;
 


Index: llvm/include/llvm/Pass.h
diff -u llvm/include/llvm/Pass.h:1.43 llvm/include/llvm/Pass.h:1.44
--- llvm/include/llvm/Pass.h:1.43	Thu Apr  1 11:15:42 2004
+++ llvm/include/llvm/Pass.h	Tue Jun  8 12:44:21 2004
@@ -38,7 +38,7 @@
 namespace llvm {
 
 class Value;
-class BasicBlock;
+struct BasicBlock;
 class Function;
 class Module;
 class AnalysisUsage;


Index: llvm/include/llvm/Value.h
diff -u llvm/include/llvm/Value.h:1.50 llvm/include/llvm/Value.h:1.51
--- llvm/include/llvm/Value.h:1.50	Thu Feb 26 02:08:38 2004
+++ llvm/include/llvm/Value.h	Tue Jun  8 12:44:21 2004
@@ -24,11 +24,10 @@
 
 namespace llvm {
 
-class Type;
 class Constant;
 class Argument;
 class Instruction;
-class BasicBlock;
+struct BasicBlock;
 class GlobalValue;
 class Function;
 class GlobalVariable;


Index: llvm/include/llvm/iPHINode.h
diff -u llvm/include/llvm/iPHINode.h:1.17 llvm/include/llvm/iPHINode.h:1.18
--- llvm/include/llvm/iPHINode.h:1.17	Wed May 26 19:15:23 2004
+++ llvm/include/llvm/iPHINode.h	Tue Jun  8 12:44:21 2004
@@ -18,7 +18,7 @@
 
 namespace llvm {
 
-class BasicBlock;
+struct BasicBlock;
 
 //===----------------------------------------------------------------------===//
 //                               PHINode Class





More information about the llvm-commits mailing list