DIBuilder: support structs with vtable pointers in the same way as classes
[oota-llvm.git] / include / llvm / ExecutionEngine / GenericValue.h
index d0cd2cd0bc832c22af9dbead148ddb05ccde550b..e160e3aafd29233f3a8f5be16191aa18025f171a 100644 (file)
@@ -2,8 +2,8 @@
 //
 //                     The LLVM Compiler Infrastructure
 //
-// This file was developed by the LLVM research group and is distributed under
-// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
 //
 //===----------------------------------------------------------------------===//
 //
@@ -12,8 +12,8 @@
 //===----------------------------------------------------------------------===//
 
 
-#ifndef GENERIC_VALUE_H
-#define GENERIC_VALUE_H
+#ifndef LLVM_EXECUTIONENGINE_GENERICVALUE_H
+#define LLVM_EXECUTIONENGINE_GENERICVALUE_H
 
 #include "llvm/ADT/APInt.h"
 #include "llvm/Support/DataTypes.h"
@@ -31,10 +31,10 @@ struct GenericValue {
     struct { unsigned int first; unsigned int second; } UIntPairVal;
     unsigned char   Untyped[8];
   };
-  APInt IntVal;
+  APInt IntVal;   // also used for long doubles
 
   GenericValue() : DoubleVal(0.0), IntVal(1,0) {}
-  GenericValue(void *V) : PointerVal(V), IntVal(1,0) { }
+  explicit GenericValue(void *V) : PointerVal(V), IntVal(1,0) { }
 };
 
 inline GenericValue PTOGV(void *P) { return GenericValue(P); }