Initialize the components of this class. Otherwise GCC thinks that Array may be
authorDuncan Sands <baldrick@free.fr>
Wed, 23 Jan 2013 09:09:50 +0000 (09:09 +0000)
committerDuncan Sands <baldrick@free.fr>
Wed, 23 Jan 2013 09:09:50 +0000 (09:09 +0000)
used uninitialized, since it fails to understand that Array is only used when
SingleValue is not, and outputs a warning.  It also seems generally safer given
that the constructor is non-trivial and has plenty of early exits.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173242 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Utils/SimplifyCFG.cpp

index f10c35fa65c6e79cb128b3a1d1d5c5f93591bf79..0988a9695bdb7a249d4bb03c3d0129696e10fcec 100644 (file)
@@ -3382,7 +3382,8 @@ SwitchLookupTable::SwitchLookupTable(Module &M,
                                      ConstantInt *Offset,
                const SmallVector<std::pair<ConstantInt*, Constant*>, 4>& Values,
                                      Constant *DefaultValue,
-                                     const DataLayout *TD) {
+                                     const DataLayout *TD)
+    : SingleValue(0), BitMap(0), BitMapElementTy(0), Array(0) {
   assert(Values.size() && "Can't build lookup table without values!");
   assert(TableSize >= Values.size() && "Can't fit values in table!");