diff --git a/include/llvm-c/ExecutionEngine.h b/include/llvm-c/ExecutionEngine.h
index 9877b8d5095..05f2a892e22 100644
--- a/include/llvm-c/ExecutionEngine.h
+++ b/include/llvm-c/ExecutionEngine.h
@@ -104,7 +104,7 @@ void *LLVMGetPointerToGlobal(LLVMExecutionEngineRef EE, LLVMValueRef Global);
 }
 
 namespace llvm {
-  class GenericValue;
+  struct GenericValue;
   class ExecutionEngine;
   
   #define DEFINE_SIMPLE_CONVERSION_FUNCTIONS(ty, ref)   \
diff --git a/include/llvm/Analysis/IVUsers.h b/include/llvm/Analysis/IVUsers.h
index e4820f0053d..18e6fec97db 100644
--- a/include/llvm/Analysis/IVUsers.h
+++ b/include/llvm/Analysis/IVUsers.h
@@ -25,7 +25,7 @@ namespace llvm {
 class DominatorTree;
 class Instruction;
 class Value;
-class IVUsersOfOneStride;
+struct IVUsersOfOneStride;
 
 /// IVStrideUse - Keep track of one use of a strided induction variable, where
 /// the stride is stored externally.  The Offset member keeps track of the
diff --git a/include/llvm/Analysis/ScalarEvolution.h b/include/llvm/Analysis/ScalarEvolution.h
index e57b2adad56..ba535504998 100644
--- a/include/llvm/Analysis/ScalarEvolution.h
+++ b/include/llvm/Analysis/ScalarEvolution.h
@@ -164,7 +164,7 @@ namespace llvm {
     };
 
     friend class SCEVCallbackVH;
-    friend class SCEVExpander;
+    friend struct SCEVExpander;
 
     /// F - The function we are analyzing.
     ///
diff --git a/include/llvm/Debugger/ProgramInfo.h b/include/llvm/Debugger/ProgramInfo.h
index 5c07c866c84..8f31d7f1350 100644
--- a/include/llvm/Debugger/ProgramInfo.h
+++ b/include/llvm/Debugger/ProgramInfo.h
@@ -30,7 +30,7 @@ namespace llvm {
   class GlobalVariable;
   class Module;
   class SourceFile;
-  class SourceLanguage;
+  struct SourceLanguage;
   class ProgramInfo;
 
   /// SourceLanguageCache - SourceLanguage implementations are allowed to cache
diff --git a/lib/CodeGen/Spiller.h b/lib/CodeGen/Spiller.h
index 9c3900df0b5..f339336f61c 100644
--- a/lib/CodeGen/Spiller.h
+++ b/lib/CodeGen/Spiller.h
@@ -14,7 +14,7 @@
 
 namespace llvm {
 
-  class LiveInterval;
+  struct LiveInterval;
   class LiveIntervals;
   class LiveStacks;
   class MachineFunction;
diff --git a/lib/ExecutionEngine/JIT/JIT.h b/lib/ExecutionEngine/JIT/JIT.h
index c992509b086..1ad54f37807 100644
--- a/lib/ExecutionEngine/JIT/JIT.h
+++ b/lib/ExecutionEngine/JIT/JIT.h
@@ -20,7 +20,7 @@
 namespace llvm {
 
 class Function;
-class JITEvent_EmittedFunctionDetails;
+struct JITEvent_EmittedFunctionDetails;
 class MachineCodeEmitter;
 class MachineCodeInfo;
 class TargetJITInfo;
diff --git a/tools/llvm-db/CLIDebugger.h b/tools/llvm-db/CLIDebugger.h
index 99045592edf..0595b3debad 100644
--- a/tools/llvm-db/CLIDebugger.h
+++ b/tools/llvm-db/CLIDebugger.h
@@ -21,7 +21,7 @@
 namespace llvm {
   class CLICommand;
   class SourceFile;
-  class SourceLanguage;
+  struct SourceLanguage;
   class ProgramInfo;
   class RuntimeInfo;
   class LLVMContext;