]> granicus.if.org Git - clang/commitdiff
Explicitly initialize the options array, MinGW's gcc 4.3.5 appears to have a bug
authorDaniel Dunbar <daniel@zuster.org>
Mon, 13 Jul 2009 21:50:47 +0000 (21:50 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Mon, 13 Jul 2009 21:50:47 +0000 (21:50 +0000)
in array value-initialization.

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

lib/Driver/OptTable.cpp

index 7ea6a8b0d9f49015a4225853c74d091427bd5218..8c88575764507655d93167b1288a8c52163db05d 100644 (file)
@@ -91,7 +91,11 @@ static Info &getInfo(unsigned id) {
   return OptionInfos[id - 1];
 }
 
-OptTable::OptTable() : Options(new Option*[numOptions]()) {
+OptTable::OptTable() : Options(new Option*[numOptions]) {
+  // Explicitly zero initialize the error to work around a bug in array
+  // value-initialization on MinGW with gcc 4.3.5.
+  memset(Options, 0, sizeof(*Options) * numOptions);
+
   // Find start of normal options.
   FirstSearchableOption = 0;
   for (unsigned i = OPT_UNKNOWN + 1; i < LastOption; ++i) {