Change to avoid bug in GCC 3.0.4
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2997 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/Support/CommandLine.h b/include/Support/CommandLine.h
index e8a4250..9e02a6c 100644
--- a/include/Support/CommandLine.h
+++ b/include/Support/CommandLine.h
@@ -173,6 +173,7 @@
// occurances of -ArgStr on the command line.
//
void addArgument(const char *ArgStr);
+ void removeArgument(const char *ArgStr);
// Return the width of the option tag for printing...
virtual unsigned getOptionWidth() const = 0;
@@ -255,8 +256,8 @@
//===----------------------------------------------------------------------===//
// Enum valued command line option
//
-#define clEnumVal(ENUMVAL, DESC) #ENUMVAL, ENUMVAL, DESC
-#define clEnumValN(ENUMVAL, FLAGNAME, DESC) FLAGNAME, ENUMVAL, DESC
+#define clEnumVal(ENUMVAL, DESC) #ENUMVAL, (int)ENUMVAL, DESC
+#define clEnumValN(ENUMVAL, FLAGNAME, DESC) FLAGNAME, (int)ENUMVAL, DESC
// values - For custom data types, allow specifying a group of values together
// as the values that go into the mapping that the option handler uses. Note
@@ -278,7 +279,7 @@
// Process the varargs portion of the values...
while (const char *EnumName = va_arg(ValueArgs, const char *)) {
- DataType EnumVal = va_arg(ValueArgs, DataType);
+ DataType EnumVal = (DataType)va_arg(ValueArgs, int);
const char *EnumDesc = va_arg(ValueArgs, const char *);
Values.push_back(std::make_pair(EnumName, // Add value to value map
std::make_pair(EnumVal, EnumDesc)));