Index: include/llvm/AbstractTypeUser.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/AbstractTypeUser.h,v retrieving revision 1.22 diff -u -r1.22 AbstractTypeUser.h --- include/llvm/AbstractTypeUser.h 4 Aug 2004 04:45:42 -0000 1.22 +++ include/llvm/AbstractTypeUser.h 27 Oct 2004 07:54:44 -0000 @@ -39,7 +39,7 @@ namespace llvm { -struct Type; +class Type; class DerivedType; class AbstractTypeUser { Index: include/llvm/BasicBlock.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/BasicBlock.h,v retrieving revision 1.43 diff -u -r1.43 BasicBlock.h --- include/llvm/BasicBlock.h 11 Oct 2004 22:21:13 -0000 1.43 +++ include/llvm/BasicBlock.h 27 Oct 2004 07:54:44 -0000 @@ -45,7 +45,8 @@ static iplist &getList(BasicBlock *BB); }; -struct BasicBlock : public Value { // Basic blocks are data objects also +class BasicBlock : public Value { // Basic blocks are data objects also +public: typedef iplist InstListType; private : InstListType InstList; Index: include/llvm/Instructions.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Instructions.h,v retrieving revision 1.5 diff -u -r1.5 Instructions.h --- include/llvm/Instructions.h 16 Oct 2004 18:05:54 -0000 1.5 +++ include/llvm/Instructions.h 27 Oct 2004 07:54:45 -0000 @@ -21,7 +21,7 @@ namespace llvm { -struct BasicBlock; +class BasicBlock; class PointerType; //===----------------------------------------------------------------------===// @@ -1159,7 +1159,8 @@ /// UnwindInst - Immediately exit the current function, unwinding the stack /// until an invoke instruction is found. /// -struct UnwindInst : public TerminatorInst { +class UnwindInst : public TerminatorInst { +public: UnwindInst(Instruction *InsertBefore = 0) : TerminatorInst(Instruction::Unwind, InsertBefore) { } @@ -1196,7 +1197,8 @@ /// presence of this instruction indicates some higher level knowledge that the /// end of the block cannot be reached. /// -struct UnreachableInst : public TerminatorInst { +class UnreachableInst : public TerminatorInst { +public: UnreachableInst(Instruction *InsertBefore = 0) : TerminatorInst(Instruction::Unreachable, InsertBefore) { } Index: include/llvm/Pass.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Pass.h,v retrieving revision 1.46 diff -u -r1.46 Pass.h --- include/llvm/Pass.h 20 Sep 2004 04:42:18 -0000 1.46 +++ include/llvm/Pass.h 27 Oct 2004 07:54:45 -0000 @@ -38,7 +38,7 @@ namespace llvm { class Value; -struct BasicBlock; +class BasicBlock; class Function; class Module; class AnalysisUsage; @@ -56,7 +56,7 @@ /// constrained passes described below. /// class Pass { - friend class AnalysisResolver; + friend struct AnalysisResolver; AnalysisResolver *Resolver; // AnalysisResolver this pass is owned by... const PassInfo *PassInfoCache; @@ -211,8 +211,8 @@ /// interprocedural optimizations and analyses. ModulePass's may do anything /// they want to the program. /// -struct ModulePass : public Pass { - +class ModulePass : public Pass { +public: /// runOnModule - Virtual method overriden by subclasses to process the module /// being operated on. virtual bool runOnModule(Module &M) = 0; @@ -228,7 +228,8 @@ /// not need to be run. This is useful for things like target information and /// "basic" versions of AnalysisGroups. /// -struct ImmutablePass : public ModulePass { +class ImmutablePass : public ModulePass { +public: /// initializePass - This method may be overriden by immutable passes to allow /// them to perform various initialization actions they require. This is /// primarily because an ImmutablePass can "require" another ImmutablePass, @@ -255,7 +256,8 @@ /// 2. Optimizing a function does not cause the addition or removal of any /// functions in the module /// -struct FunctionPass : public ModulePass { +class FunctionPass : public ModulePass { +public: /// doInitialization - Virtual method overridden by subclasses to do /// any necessary per-module initialization. /// Index: include/llvm/Use.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Use.h,v retrieving revision 1.6 diff -u -r1.6 Use.h --- include/llvm/Use.h 1 Sep 2004 22:55:34 -0000 1.6 +++ include/llvm/Use.h 27 Oct 2004 07:54:45 -0000 @@ -35,7 +35,7 @@ Value *Val; User *U; Use *Prev, *Next; - friend class ilist_traits; + friend struct ilist_traits; public: inline Use(Value *v, User *user); inline Use(const Use &u); Index: include/llvm/Value.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Value.h,v retrieving revision 1.65 diff -u -r1.65 Value.h --- include/llvm/Value.h 16 Oct 2004 18:06:07 -0000 1.65 +++ include/llvm/Value.h 27 Oct 2004 07:54:46 -0000 @@ -27,7 +27,7 @@ class Constant; class Argument; class Instruction; -struct BasicBlock; +class BasicBlock; class GlobalValue; class Function; class GlobalVariable; Index: include/llvm/Analysis/AliasSetTracker.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Analysis/AliasSetTracker.h,v retrieving revision 1.21 diff -u -r1.21 AliasSetTracker.h --- include/llvm/Analysis/AliasSetTracker.h 15 Sep 2004 17:00:41 -0000 1.21 +++ include/llvm/Analysis/AliasSetTracker.h 27 Oct 2004 07:54:46 -0000 @@ -34,7 +34,7 @@ class AliasSet { friend class AliasSetTracker; - struct PointerRec; + class PointerRec; typedef std::pair HashNodePair; class PointerRec { @@ -116,7 +116,7 @@ // Volatile - True if this alias set contains volatile loads or stores. bool Volatile : 1; - friend class ilist_traits; + friend struct ilist_traits; AliasSet *getPrev() const { return Prev; } AliasSet *getNext() const { return Next; } void setPrev(AliasSet *P) { Prev = P; } Index: include/llvm/Analysis/Dominators.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Analysis/Dominators.h,v retrieving revision 1.46 diff -u -r1.46 Dominators.h --- include/llvm/Analysis/Dominators.h 14 Oct 2004 15:46:59 -0000 1.46 +++ include/llvm/Analysis/Dominators.h 27 Oct 2004 07:54:47 -0000 @@ -287,9 +287,9 @@ Node *RootNode; public: class Node { - friend class DominatorTree; - friend class PostDominatorTree; - friend class DominatorTreeBase; + friend struct DominatorTree; + friend struct PostDominatorTree; + friend struct DominatorTreeBase; BasicBlock *TheBB; Node *IDom; std::vector Children; Index: include/llvm/Analysis/LoopInfo.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Analysis/LoopInfo.h,v retrieving revision 1.41 diff -u -r1.41 LoopInfo.h --- include/llvm/Analysis/LoopInfo.h 1 Sep 2004 22:55:34 -0000 1.41 +++ include/llvm/Analysis/LoopInfo.h 27 Oct 2004 07:54:47 -0000 @@ -35,7 +35,7 @@ namespace llvm { -class DominatorSet; +struct DominatorSet; class LoopInfo; class PHINode; class Instruction; Index: include/llvm/Analysis/DataStructure/DSNode.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Analysis/DataStructure/DSNode.h,v retrieving revision 1.44 diff -u -r1.44 DSNode.h --- include/llvm/Analysis/DataStructure/DSNode.h 7 Jul 2004 06:29:26 -0000 1.44 +++ include/llvm/Analysis/DataStructure/DSNode.h 27 Oct 2004 07:54:48 -0000 @@ -47,7 +47,7 @@ /// doubly-linked ilist in the DSGraph. /// DSNode *Next, *Prev; - friend class ilist_traits; + friend struct ilist_traits; /// Size - The current size of the node. This should be equal to the size of /// the current type record. Index: include/llvm/CodeGen/MachineBasicBlock.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/CodeGen/MachineBasicBlock.h,v retrieving revision 1.40 diff -u -r1.40 MachineBasicBlock.h --- include/llvm/CodeGen/MachineBasicBlock.h 26 Oct 2004 15:41:13 -0000 1.40 +++ include/llvm/CodeGen/MachineBasicBlock.h 27 Oct 2004 07:54:48 -0000 @@ -24,7 +24,8 @@ // ilist_traits template <> -class ilist_traits { +struct ilist_traits { +protected: // this is only set by the MachineBasicBlock owning the ilist friend class MachineBasicBlock; MachineBasicBlock* parent; @@ -179,7 +180,7 @@ int getNumber() const { return Number; } private: // Methods used to maintain doubly linked list of blocks... - friend class ilist_traits; + friend struct ilist_traits; MachineBasicBlock *getPrev() const { return Prev; } MachineBasicBlock *getNext() const { return Next; } Index: include/llvm/CodeGen/MachineCodeEmitter.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/CodeGen/MachineCodeEmitter.h,v retrieving revision 1.18 diff -u -r1.18 MachineCodeEmitter.h --- include/llvm/CodeGen/MachineCodeEmitter.h 1 Sep 2004 22:55:34 -0000 1.18 +++ include/llvm/CodeGen/MachineCodeEmitter.h 27 Oct 2004 07:54:48 -0000 @@ -29,7 +29,8 @@ class GlobalValue; class Function; -struct MachineCodeEmitter { +class MachineCodeEmitter { +public: virtual ~MachineCodeEmitter() {} /// startFunction - This callback is invoked when the specified function is Index: include/llvm/CodeGen/MachineFunction.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/CodeGen/MachineFunction.h,v retrieving revision 1.44 diff -u -r1.44 MachineFunction.h --- include/llvm/CodeGen/MachineFunction.h 30 Sep 2004 21:42:02 -0000 1.44 +++ include/llvm/CodeGen/MachineFunction.h 27 Oct 2004 07:54:49 -0000 @@ -31,7 +31,7 @@ // ilist_traits template <> -class ilist_traits { +struct ilist_traits { // this is only set by the MachineFunction owning the ilist friend class MachineFunction; MachineFunction* Parent; Index: include/llvm/CodeGen/MachineInstr.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/CodeGen/MachineInstr.h,v retrieving revision 1.156 diff -u -r1.156 MachineInstr.h --- include/llvm/CodeGen/MachineInstr.h 18 Oct 2004 17:19:20 -0000 1.156 +++ include/llvm/CodeGen/MachineInstr.h 27 Oct 2004 07:54:49 -0000 @@ -29,8 +29,8 @@ class TargetMachine; class GlobalValue; -template class ilist_traits; -template class ilist; +template struct ilist_traits; +template struct ilist; typedef short MachineOpCode; @@ -417,7 +417,7 @@ // Intrusive list support // - friend class ilist_traits; + friend struct ilist_traits; public: MachineInstr(short Opcode, unsigned numOperands); Index: include/llvm/Support/Annotation.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Support/Annotation.h,v retrieving revision 1.16 diff -u -r1.16 Annotation.h --- include/llvm/Support/Annotation.h 1 Sep 2004 22:55:34 -0000 1.16 +++ include/llvm/Support/Annotation.h 27 Oct 2004 07:54:49 -0000 @@ -30,7 +30,7 @@ class AnnotationID; class Annotation; class Annotable; -class AnnotationManager; +struct AnnotationManager; //===----------------------------------------------------------------------===// // @@ -39,7 +39,7 @@ // freely around and passed byvalue with little or no overhead. // class AnnotationID { - friend class AnnotationManager; + friend struct AnnotationManager; unsigned ID; AnnotationID(); // Default ctor is disabled Index: include/llvm/Support/CommandLine.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Support/CommandLine.h,v retrieving revision 1.36 diff -u -r1.36 CommandLine.h --- include/llvm/Support/CommandLine.h 1 Sep 2004 22:55:35 -0000 1.36 +++ include/llvm/Support/CommandLine.h 27 Oct 2004 07:54:50 -0000 @@ -513,8 +513,8 @@ // parser // template<> -struct parser : public basic_parser { - +class parser : public basic_parser { +public: // parse - Return true on error. bool parse(Option &O, const char *ArgName, const std::string &Arg, bool &Val); @@ -531,8 +531,8 @@ // parser // template<> -struct parser : public basic_parser { - +class parser : public basic_parser { +public: // parse - Return true on error. bool parse(Option &O, const char *ArgName, const std::string &Arg, int &Val); @@ -545,8 +545,8 @@ // parser // template<> -struct parser : public basic_parser { - +class parser : public basic_parser { +public: // parse - Return true on error. bool parse(Option &O, const char *AN, const std::string &Arg, unsigned &Val); @@ -559,7 +559,8 @@ // parser // template<> -struct parser : public basic_parser { +class parser : public basic_parser { +public: // parse - Return true on error. bool parse(Option &O, const char *AN, const std::string &Arg, double &Val); @@ -572,7 +573,8 @@ // parser // template<> -struct parser : public basic_parser { +class parser : public basic_parser { +public: // parse - Return true on error. bool parse(Option &O, const char *AN, const std::string &Arg, float &Val); @@ -585,7 +587,8 @@ // parser // template<> -struct parser : public basic_parser { +class parser : public basic_parser { +public: // parse - Return true on error. bool parse(Option &O, const char *AN, const std::string &Arg, std::string &Value) { @@ -687,8 +690,8 @@ // object in all cases that it is used. // template -struct opt_storage : public DataType { - +class opt_storage : public DataType { +public: template void setValue(const T &V) { DataType::operator=(V); } @@ -701,7 +704,8 @@ // to get at the value. // template -struct opt_storage { +class opt_storage { +public: DataType Value; // Make sure we initialize the value with the default constructor for the @@ -864,8 +868,8 @@ // object in all cases that it is used. // template -struct list_storage : public std::vector { - +class list_storage : public std::vector { +public: template void addValue(const T &V) { push_back(V); } }; Index: include/llvm/Support/DOTGraphTraits.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Support/DOTGraphTraits.h,v retrieving revision 1.10 diff -u -r1.10 DOTGraphTraits.h --- include/llvm/Support/DOTGraphTraits.h 1 Sep 2004 22:55:35 -0000 1.10 +++ include/llvm/Support/DOTGraphTraits.h 27 Oct 2004 07:54:50 -0000 @@ -95,7 +95,7 @@ /// from DefaultDOTGraphTraits if you don't need to override everything. /// template -class DOTGraphTraits : public DefaultDOTGraphTraits {}; +struct DOTGraphTraits : public DefaultDOTGraphTraits {}; } // End llvm namespace Index: include/llvm/System/MappedFile.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/System/MappedFile.h,v retrieving revision 1.2 diff -u -r1.2 MappedFile.h --- include/llvm/System/MappedFile.h 4 Oct 2004 17:26:26 -0000 1.2 +++ include/llvm/System/MappedFile.h 27 Oct 2004 07:54:50 -0000 @@ -21,7 +21,7 @@ /// Forward declare a class used for holding platform specific information /// that needs to be - class MappedFileInfo; + struct MappedFileInfo; /// This class provides an abstraction for a memory mapped file in the /// operating system's filesystem. It provides platform independent operations Index: include/llvm/Target/TargetData.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Target/TargetData.h,v retrieving revision 1.27 diff -u -r1.27 TargetData.h --- include/llvm/Target/TargetData.h 1 Sep 2004 22:55:35 -0000 1.27 +++ include/llvm/Target/TargetData.h 27 Oct 2004 07:54:50 -0000 @@ -114,7 +114,8 @@ // This object is used to lazily calculate structure layout information for a // target machine, based on the TargetData structure. // -struct StructLayout { +class StructLayout { +public: std::vector MemberOffsets; uint64_t StructSize; unsigned StructAlignment; Index: include/llvm/Target/TargetFrameInfo.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Target/TargetFrameInfo.h,v retrieving revision 1.16 diff -u -r1.16 TargetFrameInfo.h --- include/llvm/Target/TargetFrameInfo.h 15 Aug 2004 09:18:55 -0000 1.16 +++ include/llvm/Target/TargetFrameInfo.h 27 Oct 2004 07:54:50 -0000 @@ -27,7 +27,8 @@ /// The offset to the local area is the offset from the stack pointer on /// function entry to the first location where function data (local variables, /// spill locations) can be stored. -struct TargetFrameInfo { +class TargetFrameInfo { +public: enum StackDirection { StackGrowsUp, // Adding to the stack increases the stack address StackGrowsDown // Adding to the stack decreases the stack address Index: include/llvm/Target/TargetInstrInfo.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Target/TargetInstrInfo.h,v retrieving revision 1.72 diff -u -r1.72 TargetInstrInfo.h --- include/llvm/Target/TargetInstrInfo.h 28 Sep 2004 18:37:00 -0000 1.72 +++ include/llvm/Target/TargetInstrInfo.h 27 Oct 2004 07:54:51 -0000 @@ -61,7 +61,8 @@ // before control flow occurs. const unsigned M_TERMINATOR_FLAG = 1 << 16; -struct TargetInstrDescriptor { +class TargetInstrDescriptor { +public: const char * Name; // Assembly language mnemonic for the opcode. int numOperands; // Number of args; -1 if variable #args int resultPos; // Position of the result; -1 if no result Index: include/llvm/Target/TargetSchedInfo.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Target/TargetSchedInfo.h,v retrieving revision 1.31 diff -u -r1.31 TargetSchedInfo.h --- include/llvm/Target/TargetSchedInfo.h 25 Oct 2004 19:07:43 -0000 1.31 +++ include/llvm/Target/TargetSchedInfo.h 27 Oct 2004 07:54:51 -0000 @@ -152,7 +152,8 @@ /// TargetSchedInfo - Common interface to machine information for /// instruction scheduling /// -struct TargetSchedInfo { +class TargetSchedInfo { +public: const TargetMachine& target; unsigned maxNumIssueTotal; Index: include/llvm/Transforms/Utils/FunctionUtils.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Transforms/Utils/FunctionUtils.h,v retrieving revision 1.6 diff -u -r1.6 FunctionUtils.h --- include/llvm/Transforms/Utils/FunctionUtils.h 23 Apr 2004 23:54:34 -0000 1.6 +++ include/llvm/Transforms/Utils/FunctionUtils.h 27 Oct 2004 07:54:51 -0000 @@ -18,7 +18,7 @@ namespace llvm { class BasicBlock; - class DominatorSet; + struct DominatorSet; class Function; class Loop; Index: include/llvm/Transforms/Utils/PromoteMemToReg.h =================================================================== RCS file: /var/cvs/llvm/llvm/include/llvm/Transforms/Utils/PromoteMemToReg.h,v retrieving revision 1.6 diff -u -r1.6 PromoteMemToReg.h --- include/llvm/Transforms/Utils/PromoteMemToReg.h 15 Sep 2004 01:02:30 -0000 1.6 +++ include/llvm/Transforms/Utils/PromoteMemToReg.h 27 Oct 2004 07:54:51 -0000 @@ -20,8 +20,8 @@ namespace llvm { class AllocaInst; -class DominatorTree; -class DominanceFrontier; +struct DominatorTree; +struct DominanceFrontier; class TargetData; class AliasSetTracker; Index: lib/Analysis/InstCount.cpp =================================================================== RCS file: /var/cvs/llvm/llvm/lib/Analysis/InstCount.cpp,v retrieving revision 1.8 diff -u -r1.8 InstCount.cpp --- lib/Analysis/InstCount.cpp 1 Sep 2004 22:55:35 -0000 1.8 +++ lib/Analysis/InstCount.cpp 27 Oct 2004 07:54:51 -0000 @@ -29,7 +29,7 @@ #include "llvm/Instruction.def" class InstCount : public FunctionPass, public InstVisitor { - friend class InstVisitor; + friend struct InstVisitor; void visitFunction (Function &F) { ++TotalFuncs; } void visitBasicBlock(BasicBlock &BB) { ++TotalBlocks; } Index: lib/Transforms/TransformInternals.h =================================================================== RCS file: /var/cvs/llvm/llvm/lib/Transforms/TransformInternals.h,v retrieving revision 1.23 diff -u -r1.23 TransformInternals.h --- lib/Transforms/TransformInternals.h 11 Nov 2003 22:41:33 -0000 1.23 +++ lib/Transforms/TransformInternals.h 27 Oct 2004 07:54:53 -0000 @@ -90,7 +90,8 @@ typedef std::map ValueTypeCache; -struct ValueMapCache { +class ValueMapCache { +public: // Operands mapped - Contains an entry if the first value (the user) has had // the second value (the operand) mapped already. // Index: lib/Transforms/Scalar/IndVarSimplify.cpp =================================================================== RCS file: /var/cvs/llvm/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp,v retrieving revision 1.73 diff -u -r1.73 IndVarSimplify.cpp --- lib/Transforms/Scalar/IndVarSimplify.cpp 12 Oct 2004 01:02:29 -0000 1.73 +++ lib/Transforms/Scalar/IndVarSimplify.cpp 27 Oct 2004 07:54:54 -0000 @@ -66,7 +66,7 @@ Instruction *InsertPt; - friend class SCEVVisitor; + friend struct SCEVVisitor; public: SCEVExpander(ScalarEvolution &se, LoopInfo &li) : SE(se), LI(li) {} Index: lib/Transforms/Scalar/SCCP.cpp =================================================================== RCS file: /var/cvs/llvm/llvm/lib/Transforms/Scalar/SCCP.cpp,v retrieving revision 1.104 diff -u -r1.104 SCCP.cpp --- lib/Transforms/Scalar/SCCP.cpp 16 Oct 2004 18:09:41 -0000 1.104 +++ lib/Transforms/Scalar/SCCP.cpp 27 Oct 2004 07:54:55 -0000 @@ -135,7 +135,7 @@ // The implementation of this class // private: - friend class InstVisitor; // Allow callbacks from visitor + friend struct InstVisitor; // Allow callbacks from visitor // markConstant - Make a value be marked as "constant". If the value // is not already a constant, add it to the instruction work list so that Index: lib/VMCore/ConstantFolding.h =================================================================== RCS file: /var/cvs/llvm/llvm/lib/VMCore/ConstantFolding.h,v retrieving revision 1.43 diff -u -r1.43 ConstantFolding.h --- lib/VMCore/ConstantFolding.h 11 Oct 2004 22:52:25 -0000 1.43 +++ lib/VMCore/ConstantFolding.h 27 Oct 2004 07:54:55 -0000 @@ -24,7 +24,7 @@ namespace llvm { class Value; class Constant; - struct Type; + class Type; // Constant fold various types of instruction... Constant *ConstantFoldCastInstruction(const Constant *V, const Type *DestTy); Index: lib/VMCore/PassManagerT.h =================================================================== RCS file: /var/cvs/llvm/llvm/lib/VMCore/PassManagerT.h,v retrieving revision 1.53 diff -u -r1.53 PassManagerT.h --- lib/VMCore/PassManagerT.h 20 Sep 2004 04:47:24 -0000 1.53 +++ lib/VMCore/PassManagerT.h 27 Oct 2004 07:54:55 -0000 @@ -630,7 +630,8 @@ // This pass manager is used to group together all of the BasicBlockPass's // into a single unit. // -template<> struct PassManagerTraits : public BasicBlockPass { +template<> class PassManagerTraits : public BasicBlockPass { +public: // PassClass - The type of passes tracked by this PassManager typedef BasicBlockPass PassClass; @@ -683,7 +684,8 @@ // This pass manager is used to group together all of the FunctionPass's // into a single unit. // -template<> struct PassManagerTraits : public FunctionPass { +template<> class PassManagerTraits : public FunctionPass { +public: // PassClass - The type of passes tracked by this PassManager typedef FunctionPass PassClass; @@ -726,7 +728,8 @@ // // This is the top level PassManager implementation that holds generic passes. // -template<> struct PassManagerTraits : public ModulePass { +template<> class PassManagerTraits : public ModulePass { +public: // PassClass - The type of passes tracked by this PassManager typedef ModulePass PassClass; Index: utils/TableGen/CodeGenTarget.h =================================================================== RCS file: /var/cvs/llvm/llvm/utils/TableGen/CodeGenTarget.h,v retrieving revision 1.14 diff -u -r1.14 CodeGenTarget.h --- utils/TableGen/CodeGenTarget.h 14 Oct 2004 05:50:43 -0000 1.14 +++ utils/TableGen/CodeGenTarget.h 27 Oct 2004 07:54:59 -0000 @@ -26,7 +26,7 @@ class Record; class RecordKeeper; -class CodeGenRegister; +struct CodeGenRegister; /// getValueType - Return the MVT::ValueType that the specified TableGen record /// corresponds to. Index: utils/TableGen/InstrInfoEmitter.h =================================================================== RCS file: /var/cvs/llvm/llvm/utils/TableGen/InstrInfoEmitter.h,v retrieving revision 1.6 diff -u -r1.6 InstrInfoEmitter.h --- utils/TableGen/InstrInfoEmitter.h 1 Aug 2004 05:04:00 -0000 1.6 +++ utils/TableGen/InstrInfoEmitter.h 27 Oct 2004 07:54:59 -0000 @@ -22,7 +22,7 @@ class StringInit; class IntInit; class ListInit; -class CodeGenInstruction; +struct CodeGenInstruction; class InstrInfoEmitter : public TableGenBackend { RecordKeeper &Records; Index: utils/TableGen/InstrSelectorEmitter.h =================================================================== RCS file: /var/cvs/llvm/llvm/utils/TableGen/InstrSelectorEmitter.h,v retrieving revision 1.24 diff -u -r1.24 InstrSelectorEmitter.h --- utils/TableGen/InstrSelectorEmitter.h 1 Aug 2004 04:04:35 -0000 1.24 +++ utils/TableGen/InstrSelectorEmitter.h 27 Oct 2004 07:54:59 -0000 @@ -24,7 +24,7 @@ namespace llvm { class DagInit; -class Init; +struct Init; class InstrSelectorEmitter; /// NodeType - Represents Information parsed from the DagNode entries. Index: utils/TableGen/Record.h =================================================================== RCS file: /var/cvs/llvm/llvm/utils/TableGen/Record.h,v retrieving revision 1.42 diff -u -r1.42 Record.h --- utils/TableGen/Record.h 23 Oct 2004 04:58:50 -0000 1.42 +++ utils/TableGen/Record.h 27 Oct 2004 07:54:59 -0000 @@ -34,7 +34,7 @@ class RecordRecTy; // Init subclasses... -class Init; +struct Init; class UnsetInit; class BitInit; class BitsInit; @@ -107,7 +107,8 @@ /// BitRecTy - 'bit' - Represent a single bit /// -struct BitRecTy : public RecTy { +class BitRecTy : public RecTy { +public: Init *convertValue(UnsetInit *UI) { return (Init*)UI; } Init *convertValue(BitInit *BI) { return (Init*)BI; } Init *convertValue(BitsInit *BI); @@ -157,7 +158,8 @@ /// IntRecTy - 'int' - Represent an integer value of no particular size /// -struct IntRecTy : public RecTy { +class IntRecTy : public RecTy { +public: Init *convertValue(UnsetInit *UI) { return (Init*)UI; } Init *convertValue(IntInit *II) { return (Init*)II; } Init *convertValue(BitInit *BI); @@ -177,7 +179,8 @@ /// StringRecTy - 'string' - Represent an string value /// -struct StringRecTy : public RecTy { +class StringRecTy : public RecTy { +public: Init *convertValue(UnsetInit *UI) { return (Init*)UI; } Init *convertValue(StringInit *SI) { return (Init*)SI; } Init *convertValue(TypedInit *TI); @@ -219,7 +222,8 @@ /// CodeRecTy - 'code' - Represent an code fragment, function or method. /// -struct CodeRecTy : public RecTy { +class CodeRecTy : public RecTy { +public: Init *convertValue(UnsetInit *UI) { return (Init*)UI; } Init *convertValue( CodeInit *CI) { return (Init*)CI; } Init *convertValue(TypedInit *TI); @@ -234,7 +238,8 @@ /// DagRecTy - 'dag' - Represent a dag fragment /// -struct DagRecTy : public RecTy { +class DagRecTy : public RecTy { +public: Init *convertValue(UnsetInit *UI) { return (Init*)UI; } Init *convertValue( DagInit *CI) { return (Init*)CI; } Init *convertValue(TypedInit *TI); @@ -343,7 +348,8 @@ /// UnsetInit - ? - Represents an uninitialized value /// -struct UnsetInit : public Init { +class UnsetInit : public Init { +public: virtual Init *convertInitializerTo(RecTy *Ty) { return Ty->convertValue(this); }