Applied a patch from Andrei Polushin for setting the error message format.
authorthurston <thurston@052ea7fc-9027-0410-9066-f65837a77df0>
Tue, 15 Apr 2008 20:19:17 +0000 (20:19 +0000)
committerthurston <thurston@052ea7fc-9027-0410-9066-f65837a77df0>
Tue, 15 Apr 2008 20:19:17 +0000 (20:19 +0000)
  --error-format=gnu (default)
  --error-fromat=msvc
Switched from strcasecmp to strcmp for testing long arguments.
Changed ParamCheck::parameterArg -> paramArg.

git-svn-id: http://svn.complang.org/ragel/trunk@434 052ea7fc-9027-0410-9066-f65837a77df0

13 files changed:
common/common.cpp
common/config.h.in
common/pcheck.h
doc/ragel.1.in
ragel/main.cpp
ragel/ragel.h
ragel/rlparse.kl
ragel/rlscan.rl
rlgen-cd/main.cpp
rlgen-csharp/main.cpp
rlgen-dot/main.cpp
rlgen-java/main.cpp
rlgen-ruby/main.cpp

index e15ff34..40b392b 100644 (file)
@@ -191,7 +191,7 @@ bool ParamCheck::check()
                         argv[iCurArg][0] != '-' ||   /* Not a param. */
                         argv[iCurArg][1] == 0 ) {    /* Only a dash. */
                        parameter = 0;
-                       parameterArg = 0;
+                       paramArg = 0;
 
                        iCurArg += 1;
                        state = noparam;
@@ -230,7 +230,7 @@ bool ParamCheck::check()
                                                /* We are the last arg so there
                                                 * cannot be a parameter to it. */
                                                parameter = argChar;
-                                               parameterArg = 0;
+                                               paramArg = 0;
                                                iCurArg += 1;
                                                argOffset = 0;
                                                state = invalid;
@@ -239,7 +239,7 @@ bool ParamCheck::check()
                                        else {
                                                /* the parameter to the arg is the next arg. */
                                                parameter = pSpecChar;
-                                               parameterArg = argv[iCurArg + 1];
+                                               paramArg = argv[iCurArg + 1];
                                                iCurArg += 2;
                                                argOffset = 0;
                                                state = match;
@@ -249,7 +249,7 @@ bool ParamCheck::check()
                                else {
                                        /* The param for the arg is built in. */
                                        parameter = pSpecChar;
-                                       parameterArg = argOffset + 1;
+                                       paramArg = argOffset + 1;
                                        iCurArg += 1;
                                        argOffset = 0;
                                        state = match;
@@ -260,7 +260,7 @@ bool ParamCheck::check()
                                /* Good, we matched the parm and no
                                 * arg is required. */
                                parameter = pSpecChar;
-                               parameterArg = 0;
+                               paramArg = 0;
                                argOffset += 1;
                                state = match;
                                return true;
@@ -270,7 +270,7 @@ bool ParamCheck::check()
 
        /* We did not find a match. Bad Argument. */
        parameter = argChar;
-       parameterArg = 0;
+       paramArg = 0;
        argOffset += 1;
        state = invalid;
        return true;
index 0e58d79..eaacfb3 100644 (file)
@@ -33,7 +33,6 @@
 #undef GMCS
 
 #ifdef _MSC_VER
-#define strcasecmp _stricmp
 #define strtoll _strtoi64
 #pragma warning( disable: 4244 4250 4355 4800 )
 #endif
index 7d36a83..70a7ce4 100644 (file)
@@ -29,7 +29,7 @@ public:
 
        bool check();
 
-       char *parameterArg; /* The argument to the parameter. */
+       char *paramArg;     /* The argument to the parameter. */
        char parameter;     /* The parameter matched. */
        enum { match, invalid, noparam } state;
 
index 6593701..68142e2 100644 (file)
@@ -67,6 +67,12 @@ is used (.c, .cpp, .m, .dot)
 .B \-s
 Print some statistics on standard error.
 .TP
+.B \--error-format=gnu
+Print error messages using the format "file:line:column:" (default)
+.TP
+.B \--error-format=msvc
+Print error messages using the format "file(line,column):"
+.TP
 .B \-d
 Do not remove duplicate actions from action lists.
 .TP
index 09c9060..6d0303f 100644 (file)
@@ -90,6 +90,9 @@ void usage()
 "   -d                   Do not remove duplicates from action lists\n"
 "   -I <dir>             Add <dir> to the list of directories to search\n"
 "                        for included an imported files\n"
+"error reporting format:\n"
+"   --error-format=gnu   file:line:column: message (default)\n"
+"   --error-format=msvc  file(line,column): message\n"
 "fsm minimization:\n"
 "   -n                   Do not perform minimization\n"
 "   -m                   Minimize at the end of the compilation\n"
@@ -121,13 +124,45 @@ void usage()
 "   -G2                  Really fast goto-driven FSM\n"
 "   -P<N>                N-Way Split really fast goto-driven FSM\n"
        ;       
+
+       exit(0);
 }
 
-/* Print version information. */
+/* Print version information and exit. */
 void version()
 {
        cout << "Ragel State Machine Compiler version " VERSION << " " PUBDATE << endl <<
                        "Copyright (c) 2001-2007 by Adrian Thurston" << endl;
+       exit(0);
+}
+
+/* Error reporting format. */
+ErrorFormat errorFormat = ErrorFormatGNU;
+
+InputLoc makeInputLoc( const char *fileName, int line, int col)
+{
+       InputLoc loc = { fileName, line, col };
+       return loc;
+}
+
+ostream &operator<<( ostream &out, const InputLoc &loc )
+{
+       assert( loc.fileName != 0 );
+       switch ( errorFormat ) {
+       case ErrorFormatMSVC:
+               out << loc.fileName << "(" << loc.line;
+               if ( loc.col )
+                       out << "," << loc.col;
+               out << ")";
+               break;
+
+       default:
+               out << loc.fileName << ":" << loc.line;
+               if ( loc.col )
+                       out << ":" << loc.col;
+               break;
+       }
+       return out;
 }
 
 /* Total error count. */
@@ -136,9 +171,7 @@ int gblErrorCount = 0;
 /* Print the opening to a warning in the input, then return the error ostream. */
 ostream &warning( const InputLoc &loc )
 {
-       assert( loc.fileName != 0 );
-       cerr << loc.fileName << ":" << loc.line << ":" << 
-                       loc.col << ": warning: ";
+       cerr << loc << ": warning: ";
        return cerr;
 }
 
@@ -153,8 +186,7 @@ ostream &error()
 ostream &error( const InputLoc &loc )
 {
        gblErrorCount += 1;
-       assert( loc.fileName != 0 );
-       cerr << loc.fileName << ":" << loc.line << ": ";
+       cerr << loc << ": ";
        return cerr;
 }
 
@@ -186,13 +218,13 @@ void processArgs( int argc, char **argv, char *&inputFileName, char *&outputFile
 
                        /* Output. */
                        case 'o':
-                               if ( *pc.parameterArg == 0 )
+                               if ( *pc.paramArg == 0 )
                                        error() << "a zero length output file name was given" << endl;
                                else if ( outputFileName != 0 )
                                        error() << "more than one output file name was given" << endl;
                                else {
                                        /* Ok, remember the output file name. */
-                                       outputFileName = pc.parameterArg;
+                                       outputFileName = pc.paramArg;
                                }
                                break;
 
@@ -238,42 +270,56 @@ void processArgs( int argc, char **argv, char *&inputFileName, char *&outputFile
 
                        /* Machine spec. */
                        case 'S':
-                               if ( *pc.parameterArg == 0 )
+                               if ( *pc.paramArg == 0 )
                                        error() << "please specify an argument to -S" << endl;
                                else if ( machineSpec != 0 )
                                        error() << "more than one -S argument was given" << endl;
                                else {
                                        /* Ok, remember the path to the machine to generate. */
-                                       machineSpec = pc.parameterArg;
+                                       machineSpec = pc.paramArg;
                                        frontendArgs.append( "-S" );
-                                       frontendArgs.append( pc.parameterArg );
+                                       frontendArgs.append( pc.paramArg );
                                }
                                break;
 
                        /* Machine path. */
                        case 'M':
-                               if ( *pc.parameterArg == 0 )
+                               if ( *pc.paramArg == 0 )
                                        error() << "please specify an argument to -M" << endl;
                                else if ( machineName != 0 )
                                        error() << "more than one -M argument was given" << endl;
                                else {
                                        /* Ok, remember the machine name to generate. */
-                                       machineName = pc.parameterArg;
+                                       machineName = pc.paramArg;
                                        frontendArgs.append( "-M" );
-                                       frontendArgs.append( pc.parameterArg );
+                                       frontendArgs.append( pc.paramArg );
                                }
                                break;
 
                        case 'I':
-                               if ( *pc.parameterArg == 0 )
+                               if ( *pc.paramArg == 0 )
                                        error() << "please specify an argument to -I" << endl;
                                else {
-                                       includePaths.append( pc.parameterArg );
+                                       includePaths.append( pc.paramArg );
                                        frontendArgs.append( "-I" );
-                                       frontendArgs.append( pc.parameterArg );
+                                       frontendArgs.append( pc.paramArg );
                                }
                                break;
 
+                       /* Error reporting format. */
+                       case 'E':
+                               if ( pc.paramArg[0] == '0' )
+                                       errorFormat = ErrorFormatGNU;
+                               else if ( pc.paramArg[0] == '1' )
+                                       errorFormat = ErrorFormatMSVC;
+                               else {
+                                       error() << "-E" << pc.paramArg[0] << 
+                                                       " is an invalid argument" << endl;
+                               }
+                               frontendArgs.append( "-E" );
+                               frontendArgs.append( pc.paramArg );
+                               break;
+
                        /* Host language types. */
                        case 'C':
                                hostLang = &hostLangC;
@@ -299,44 +345,61 @@ void processArgs( int argc, char **argv, char *&inputFileName, char *&outputFile
                        /* Version and help. */
                        case 'v':
                                version();
-                               exit(0);
+                               break;
                        case 'H': case 'h': case '?':
                                usage();
-                               exit(0);
+                               break;
                        case 's':
                                printStatistics = true;
                                frontendArgs.append( "-s" );
                                break;
-                       case '-':
-                               if ( strcasecmp(pc.parameterArg, "help") == 0 ) {
+                       case '-': {
+                               char *eq = strchr( pc.paramArg, '=' );
+
+                               if ( eq != 0 )
+                                       *eq++ = 0;
+
+                               if ( strcmp( pc.paramArg, "help" ) == 0 )
                                        usage();
-                                       exit(0);
-                               }
-                               else if ( strcasecmp(pc.parameterArg, "version") == 0 ) {
+                               else if ( strcmp( pc.paramArg, "version" ) == 0 )
                                        version();
-                                       exit(0);
+                               else if ( strcmp( pc.paramArg, "error-format" ) == 0 ) {
+                                       if ( eq == 0 )
+                                               error() << "expecting '=value' for error-format" << endl;
+                                       else if ( strcmp( eq, "gnu" ) == 0 ) {
+                                               errorFormat = ErrorFormatGNU;
+                                               frontendArgs.append( "--error-format=gnu" );
+                                       }
+                                       else if ( strcmp( eq, "msvc" ) == 0 ) {
+                                               errorFormat = ErrorFormatMSVC;
+                                               frontendArgs.append( "--error-format=msvc" );
+                                       }
+                                       else {
+                                               error() << "invalid value for error-format" << endl;
+                                       }
                                }
                                else {
-                                       error() << "--" << pc.parameterArg << 
+                                       error() << "--" << pc.paramArg << 
                                                        " is an invalid argument" << endl;
                                }
+                       }
 
                        /* Passthrough args. */
                        case 'T': 
                                backendArgs.append( "-T" );
-                               backendArgs.append( pc.parameterArg );
+                               backendArgs.append( pc.paramArg );
                                break;
                        case 'F': 
                                backendArgs.append( "-F" );
-                               backendArgs.append( pc.parameterArg );
+                               backendArgs.append( pc.paramArg );
                                break;
                        case 'G': 
                                backendArgs.append( "-G" );
-                               backendArgs.append( pc.parameterArg );
+                               backendArgs.append( pc.paramArg );
                                break;
                        case 'P':
                                backendArgs.append( "-P" );
-                               backendArgs.append( pc.parameterArg );
+                               backendArgs.append( pc.paramArg );
                                break;
                        case 'p':
                                backendArgs.append( "-p" );
index bbb2e93..dc9b2f4 100644 (file)
@@ -53,6 +53,13 @@ extern char *machineSpec, *machineName;
 extern bool printStatistics;
 extern bool wantDupsRemoved;
 
+/* Error reporting format. */
+enum ErrorFormat {
+       ErrorFormatGNU,
+       ErrorFormatMSVC,
+};
+
+extern ErrorFormat errorFormat;
 extern int gblErrorCount;
 extern char mainMachine[];
 
@@ -64,6 +71,9 @@ struct InputLoc
        int col;
 };
 
+InputLoc makeInputLoc( const char *fileName, int line = 0, int col = 0 );
+std::ostream &operator<<( std::ostream &out, const InputLoc &loc );
+
 /* Error reporting. */
 std::ostream &error();
 std::ostream &error( const InputLoc &loc ); 
index 782208e..42d9732 100644 (file)
@@ -1475,7 +1475,7 @@ ostream &Parser::parse_error( int tokId, Token &token )
        /* Maintain the error count. */
        gblErrorCount += 1;
 
-       cerr << token.loc.fileName << ":" << token.loc.line << ":" << token.loc.col << ": ";
+       cerr << token.loc << ": ";
        cerr << "at token ";
        if ( tokId < 128 )
                cerr << "\"" << Parser_lelNames[tokId] << "\"";
index c2e332c..341cb8b 100644 (file)
@@ -242,7 +242,7 @@ ostream &Scanner::scan_error()
 {
        /* Maintain the error count. */
        gblErrorCount += 1;
-       cerr << fileName << ":" << line << ":" << column << ": ";
+       cerr << makeInputLoc( fileName, line, column ) << ": ";
        return cerr;
 }
 
index 7cd5fa6..13ed991 100644 (file)
@@ -248,13 +248,13 @@ int main(int argc, char **argv)
                        switch ( pc.parameter ) {
                        /* Output. */
                        case 'o':
-                               if ( *pc.parameterArg == 0 )
+                               if ( *pc.paramArg == 0 )
                                        error() << "a zero length output file name was given" << endl;
                                else if ( outputFileName != 0 )
                                        error() << "more than one output file name was given" << endl;
                                else {
                                        /* Ok, remember the output file name. */
-                                       outputFileName = pc.parameterArg;
+                                       outputFileName = pc.paramArg;
                                }
                                break;
 
@@ -264,43 +264,43 @@ int main(int argc, char **argv)
 
                        /* Code style. */
                        case 'T':
-                               if ( pc.parameterArg[0] == '0' )
+                               if ( pc.paramArg[0] == '0' )
                                        codeStyle = GenTables;
-                               else if ( pc.parameterArg[0] == '1' )
+                               else if ( pc.paramArg[0] == '1' )
                                        codeStyle = GenFTables;
                                else {
-                                       error() << "-T" << pc.parameterArg[0] << 
+                                       error() << "-T" << pc.paramArg[0] << 
                                                        " is an invalid argument" << endl;
                                        exit(1);
                                }
                                break;
                        case 'F':
-                               if ( pc.parameterArg[0] == '0' )
+                               if ( pc.paramArg[0] == '0' )
                                        codeStyle = GenFlat;
-                               else if ( pc.parameterArg[0] == '1' )
+                               else if ( pc.paramArg[0] == '1' )
                                        codeStyle = GenFFlat;
                                else {
-                                       error() << "-F" << pc.parameterArg[0] << 
+                                       error() << "-F" << pc.paramArg[0] << 
                                                        " is an invalid argument" << endl;
                                        exit(1);
                                }
                                break;
                        case 'G':
-                               if ( pc.parameterArg[0] == '0' )
+                               if ( pc.paramArg[0] == '0' )
                                        codeStyle = GenGoto;
-                               else if ( pc.parameterArg[0] == '1' )
+                               else if ( pc.paramArg[0] == '1' )
                                        codeStyle = GenFGoto;
-                               else if ( pc.parameterArg[0] == '2' )
+                               else if ( pc.paramArg[0] == '2' )
                                        codeStyle = GenIpGoto;
                                else {
-                                       error() << "-G" << pc.parameterArg[0] << 
+                                       error() << "-G" << pc.paramArg[0] << 
                                                        " is an invalid argument" << endl;
                                        exit(1);
                                }
                                break;
                        case 'P':
                                codeStyle = GenSplit;
-                               numSplitPartitions = atoi( pc.parameterArg );
+                               numSplitPartitions = atoi( pc.paramArg );
                                break;
 
                        /* Version and help. */
@@ -311,16 +311,16 @@ int main(int argc, char **argv)
                                usage();
                                exit(0);
                        case '-':
-                               if ( strcasecmp(pc.parameterArg, "help") == 0 ) {
+                               if ( strcmp(pc.paramArg, "help") == 0 ) {
                                        usage();
                                        exit(0);
                                }
-                               else if ( strcasecmp(pc.parameterArg, "version") == 0 ) {
+                               else if ( strcmp(pc.paramArg, "version") == 0 ) {
                                        version();
                                        exit(0);
                                }
                                else {
-                                       error() << "--" << pc.parameterArg << 
+                                       error() << "--" << pc.paramArg << 
                                                        " is an invalid argument" << endl;
                                        break;
                                }
index be4d568..0b52c0a 100644 (file)
@@ -206,13 +206,13 @@ int main(int argc, char **argv)
                        switch ( pc.parameter ) {
                        /* Output. */
                        case 'o':
-                               if ( *pc.parameterArg == 0 )
+                               if ( *pc.paramArg == 0 )
                                        error() << "a zero length output file name was given" << endl;
                                else if ( outputFileName != 0 )
                                        error() << "more than one output file name was given" << endl;
                                else {
                                        /* Ok, remember the output file name. */
-                                       outputFileName = pc.parameterArg;
+                                       outputFileName = pc.paramArg;
                                }
                                break;
 
@@ -222,43 +222,43 @@ int main(int argc, char **argv)
 
                        /* Code style. */
                        case 'T':
-                               if ( pc.parameterArg[0] == '0' )
+                               if ( pc.paramArg[0] == '0' )
                                        codeStyle = GenTables;
-                               else if ( pc.parameterArg[0] == '1' )
+                               else if ( pc.paramArg[0] == '1' )
                                        codeStyle = GenFTables;
                                else {
-                                       error() << "-T" << pc.parameterArg[0] << 
+                                       error() << "-T" << pc.paramArg[0] << 
                                                        " is an invalid argument" << endl;
                                        exit(1);
                                }
                                break;
                        case 'F':
-                               if ( pc.parameterArg[0] == '0' )
+                               if ( pc.paramArg[0] == '0' )
                                        codeStyle = GenFlat;
-                               else if ( pc.parameterArg[0] == '1' )
+                               else if ( pc.paramArg[0] == '1' )
                                        codeStyle = GenFFlat;
                                else {
-                                       error() << "-F" << pc.parameterArg[0] << 
+                                       error() << "-F" << pc.paramArg[0] << 
                                                        " is an invalid argument" << endl;
                                        exit(1);
                                }
                                break;
                        case 'G':
-                               if ( pc.parameterArg[0] == '0' )
+                               if ( pc.paramArg[0] == '0' )
                                        codeStyle = GenGoto;
-                               else if ( pc.parameterArg[0] == '1' )
+                               else if ( pc.paramArg[0] == '1' )
                                        codeStyle = GenFGoto;
-                               else if ( pc.parameterArg[0] == '2' )
+                               else if ( pc.paramArg[0] == '2' )
                                        codeStyle = GenIpGoto;
                                else {
-                                       error() << "-G" << pc.parameterArg[0] << 
+                                       error() << "-G" << pc.paramArg[0] << 
                                                        " is an invalid argument" << endl;
                                        exit(1);
                                }
                                break;
                        case 'P':
                                codeStyle = GenSplit;
-                               numSplitPartitions = atoi( pc.parameterArg );
+                               numSplitPartitions = atoi( pc.paramArg );
                                break;
 
                        /* Version and help. */
@@ -269,16 +269,16 @@ int main(int argc, char **argv)
                                usage();
                                exit(0);
                        case '-':
-                               if ( strcasecmp(pc.parameterArg, "help") == 0 ) {
+                               if ( strcmp(pc.paramArg, "help") == 0 ) {
                                        usage();
                                        exit(0);
                                }
-                               else if ( strcasecmp(pc.parameterArg, "version") == 0 ) {
+                               else if ( strcmp(pc.paramArg, "version") == 0 ) {
                                        version();
                                        exit(0);
                                }
                                else {
-                                       error() << "--" << pc.parameterArg << 
+                                       error() << "--" << pc.paramArg << 
                                                        " is an invalid argument" << endl;
                                        break;
                                }
index d5bd5f3..d5b1618 100644 (file)
@@ -142,13 +142,13 @@ int main(int argc, char **argv)
                        switch ( pc.parameter ) {
                        /* Output. */
                        case 'o':
-                               if ( *pc.parameterArg == 0 )
+                               if ( *pc.paramArg == 0 )
                                        error() << "a zero length output file name was given" << endl;
                                else if ( outputFileName != 0 )
                                        error() << "more than one output file name was given" << endl;
                                else {
                                        /* Ok, remember the output file name. */
-                                       outputFileName = pc.parameterArg;
+                                       outputFileName = pc.paramArg;
                                }
                                break;
 
@@ -164,16 +164,16 @@ int main(int argc, char **argv)
                                usage();
                                exit(0);
                        case '-':
-                               if ( strcasecmp(pc.parameterArg, "help") == 0 ) {
+                               if ( strcmp(pc.paramArg, "help") == 0 ) {
                                        usage();
                                        exit(0);
                                }
-                               else if ( strcasecmp(pc.parameterArg, "version") == 0 ) {
+                               else if ( strcmp(pc.paramArg, "version") == 0 ) {
                                        version();
                                        exit(0);
                                }
                                else {
-                                       error() << "--" << pc.parameterArg << 
+                                       error() << "--" << pc.paramArg << 
                                                        " is an invalid argument" << endl;
                                        break;
                                }
index da8abd4..0585ecb 100644 (file)
@@ -154,13 +154,13 @@ int main(int argc, char **argv)
                        switch ( pc.parameter ) {
                        /* Output. */
                        case 'o':
-                               if ( *pc.parameterArg == 0 )
+                               if ( *pc.paramArg == 0 )
                                        error() << "a zero length output file name was given" << endl;
                                else if ( outputFileName != 0 )
                                        error() << "more than one output file name was given" << endl;
                                else {
                                        /* Ok, remember the output file name. */
-                                       outputFileName = pc.parameterArg;
+                                       outputFileName = pc.paramArg;
                                }
                                break;
 
@@ -172,16 +172,16 @@ int main(int argc, char **argv)
                                usage();
                                exit(0);
                        case '-':
-                               if ( strcasecmp(pc.parameterArg, "help") == 0 ) {
+                               if ( strcmp(pc.paramArg, "help") == 0 ) {
                                        usage();
                                        exit(0);
                                }
-                               else if ( strcasecmp(pc.parameterArg, "version") == 0 ) {
+                               else if ( strcmp(pc.paramArg, "version") == 0 ) {
                                        version();
                                        exit(0);
                                }
                                else {
-                                       error() << "--" << pc.parameterArg << 
+                                       error() << "--" << pc.paramArg << 
                                                        " is an invalid argument" << endl;
                                        break;
                                }
index 137773c..33ac682 100644 (file)
@@ -201,55 +201,55 @@ int main(int argc, char **argv)
                        switch ( pc.parameter ) {
                        /* Output. */
                        case 'o':
-                               if ( *pc.parameterArg == 0 )
+                               if ( *pc.paramArg == 0 )
                                        error() << "a zero length output file name was given" << endl;
                                else if ( outputFileName != 0 )
                                        error() << "more than one output file name was given" << endl;
                                else {
                                        /* Ok, remember the output file name. */
-                                       outputFileName = pc.parameterArg;
+                                       outputFileName = pc.paramArg;
                                }
                                break;
 
                        /* Code style. */
                        case 'T':
-                               if ( pc.parameterArg[0] == '0' )
+                               if ( pc.paramArg[0] == '0' )
                                        codeStyle = GenTables;
-                               else if ( pc.parameterArg[0] == '1' )
+                               else if ( pc.paramArg[0] == '1' )
                                        codeStyle = GenFTables;
                                else {
-                                       error() << "-T" << pc.parameterArg[0] << 
+                                       error() << "-T" << pc.paramArg[0] << 
                                                        " is an invalid argument" << endl;
                                        exit(1);
                                }
                                break;
                        case 'F':
-                               if ( pc.parameterArg[0] == '0' )
+                               if ( pc.paramArg[0] == '0' )
                                        codeStyle = GenFlat;
-                               else if ( pc.parameterArg[0] == '1' )
+                               else if ( pc.paramArg[0] == '1' )
                                        codeStyle = GenFFlat;
                                else {
-                                       error() << "-F" << pc.parameterArg[0] << 
+                                       error() << "-F" << pc.paramArg[0] << 
                                                        " is an invalid argument" << endl;
                                        exit(1);
                                }
                                break;
                        case 'G':
-                               if ( pc.parameterArg[0] == '0' )
+                               if ( pc.paramArg[0] == '0' )
                                        codeStyle = GenGoto;
-                               else if ( pc.parameterArg[0] == '1' )
+                               else if ( pc.paramArg[0] == '1' )
                                        codeStyle = GenFGoto;
-                               else if ( pc.parameterArg[0] == '2' )
+                               else if ( pc.paramArg[0] == '2' )
                                        codeStyle = GenIpGoto;
                                else {
-                                       error() << "-G" << pc.parameterArg[0] << 
+                                       error() << "-G" << pc.paramArg[0] << 
                                                        " is an invalid argument" << endl;
                                        exit(1);
                                }
                                break;
                        case 'P':
                                codeStyle = GenSplit;
-                               numSplitPartitions = atoi( pc.parameterArg );
+                               numSplitPartitions = atoi( pc.paramArg );
                                break;
 
                         case 'x':
@@ -265,19 +265,19 @@ int main(int argc, char **argv)
                                exit(0);
 
                        case '-':
-                               if ( strcasecmp(pc.parameterArg, "help") == 0 ) {
+                               if ( strcmp(pc.paramArg, "help") == 0 ) {
                                        usage();
                                        exit(0);
                                }
-                               else if ( strcasecmp(pc.parameterArg, "version") == 0 ) {
+                               else if ( strcmp(pc.paramArg, "version") == 0 ) {
                                        version();
                                        exit(0);
                                }
-                                else if ( strcasecmp(pc.parameterArg, "rbx") == 0 ) {
-                                        rubyImpl = Rubinius;
-                                }
+                               else if ( strcmp(pc.paramArg, "rbx") == 0 ) {
+                                       rubyImpl = Rubinius;
+                               }
                                else {
-                                       error() << "--" << pc.parameterArg << 
+                                       error() << "--" << pc.paramArg << 
                                                        " is an invalid argument" << endl;
                                        break;
                                }