Make sure this still compiles after LLVM r70437, which introduces a

specialization for command-line option template parser<char> which does the
wrong thing for us...
This commit is contained in:
Frits van Bommel
2009-04-30 12:25:04 +02:00
parent 96108f8e7c
commit da4450d2f5
3 changed files with 7 additions and 5 deletions

View File

@@ -133,13 +133,15 @@ enum OS
OSSolaris,
};
typedef unsigned char ubyte;
// Put command line switches in here
struct Param
{
bool obj; // write object file
bool link; // perform link
bool verbose; // verbose compile
char symdebug; // insert debug symbolic information
ubyte symdebug; // insert debug symbolic information
#if !IN_LLVM
// LDC uses a different mechanism
bool optimize; // run optimizer
@@ -159,7 +161,7 @@ struct Param
bool useUnitTests; // generate unittest code
bool useInline; // inline expand functions
bool warnings; // enable warnings
char Dversion; // D version number
ubyte Dversion; // D version number
char safe; // enforce safe memory model
char *argv0; // program name

View File

@@ -25,7 +25,7 @@ static cl::opt<bool, true> useDeprecated("d",
cl::ZeroOrMore,
cl::location(global.params.useDeprecated));
static cl::opt<char, true> useDv1(
static cl::opt<ubyte, true> useDv1(
cl::desc("Force language version:"),
cl::ZeroOrMore,
cl::values(
@@ -49,7 +49,7 @@ static cl::opt<bool, true> warnings("w",
cl::ZeroOrMore,
cl::location(global.params.warnings));
static cl::opt<char, true> debugInfo(
static cl::opt<ubyte, true> debugInfo(
cl::desc("Generating debug information:"),
cl::ZeroOrMore,
cl::values(

View File

@@ -21,7 +21,7 @@ static cl::list<const PassInfo*, bool, PassNameParser>
cl::Hidden // to clean up --help output
);
static cl::opt<char> optimizeLevel(
static cl::opt<unsigned char> optimizeLevel(
cl::desc("Setting the optimization level:"),
cl::ZeroOrMore,
cl::values(