Fix GCC warning for GenFv and VfrCompiler tool
authorlgao4 <lgao4@7335b38e-4728-0410-8992-fb3ffe349368>
Thu, 31 Dec 2009 02:39:15 +0000 (02:39 +0000)
committerlgao4 <lgao4@7335b38e-4728-0410-8992-fb3ffe349368>
Thu, 31 Dec 2009 02:39:15 +0000 (02:39 +0000)
git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@1788 7335b38e-4728-0410-8992-fb3ffe349368

12 files changed:
Source/C/Common/EfiUtilityMsgs.c
Source/C/Common/EfiUtilityMsgs.h
Source/C/GenFv/GenFvInternalLib.c
Source/C/VfrCompile/VfrCompiler.cpp
Source/C/VfrCompile/VfrCompiler.h
Source/C/VfrCompile/VfrError.cpp
Source/C/VfrCompile/VfrError.h
Source/C/VfrCompile/VfrFormPkg.cpp
Source/C/VfrCompile/VfrFormPkg.h
Source/C/VfrCompile/VfrSyntax.g
Source/C/VfrCompile/VfrUtilityLib.cpp
Source/C/VfrCompile/VfrUtilityLib.h

index 68cf024..0e7608d 100644 (file)
@@ -44,18 +44,6 @@ STATIC UINT32 mMaxWarnings            = 0;
 STATIC UINT32 mMaxWarningsPlusErrors  = 0;\r
 STATIC INT8   mPrintLimitsSet         = 0;\r
 \r
-STATIC\r
-VOID\r
-PrintMessage (\r
-  CHAR8   *Type,\r
-  CHAR8   *FileName,\r
-  UINT32  LineNumber,\r
-  UINT32  MessageCode,\r
-  CHAR8   *Text,\r
-  CHAR8   *MsgFmt,\r
-  va_list List\r
-  );\r
-\r
 STATIC\r
 VOID\r
 PrintLimitExceeded (\r
@@ -151,12 +139,6 @@ Notes:
   va_start (List, MsgFmt);\r
   PrintMessage ("ERROR", FileName, LineNumber, MessageCode, Text, MsgFmt, List);\r
   va_end (List);\r
-  //\r
-  // Set status accordingly\r
-  //\r
-  if (mStatus < STATUS_ERROR) {\r
-    mStatus = STATUS_ERROR;\r
-  }\r
 }\r
 \r
 VOID\r
@@ -211,12 +193,6 @@ Returns:
   va_start (List, MsgFmt);\r
   PrintMessage ("ERROR", mSourceFileName, mSourceFileLineNum, MessageCode, Text, MsgFmt, List);\r
   va_end (List);\r
-  //\r
-  // Set status accordingly\r
-  //\r
-  if (mStatus < STATUS_ERROR) {\r
-    mStatus = STATUS_ERROR;\r
-  }\r
 }\r
 \r
 VOID\r
@@ -396,7 +372,6 @@ Returns:
   va_end (List);\r
 }\r
 \r
-STATIC\r
 VOID\r
 PrintMessage (\r
   CHAR8   *Type,\r
@@ -517,6 +492,15 @@ Notes:
         sprintf (Line, "%s", mUtilityName);\r
       }\r
     }\r
+\r
+    if (strcmp (Type, "ERROR") == 0) {\r
+      //\r
+      // Set status accordingly for ERROR information.\r
+      //\r
+      if (mStatus < STATUS_ERROR) {\r
+        mStatus = STATUS_ERROR;\r
+      }\r
+    }\r
   }\r
 \r
   //\r
@@ -545,6 +529,7 @@ Notes:
     vsprintf (Line2, MsgFmt, List);\r
     fprintf (stdout, "  %s\n", Line2);\r
   }\r
+\r
 }\r
 \r
 STATIC\r
index 40e6e17..8986a59 100644 (file)
@@ -70,6 +70,17 @@ SetUtilityName (
   )\r
 ;\r
 \r
+VOID\r
+PrintMessage (\r
+  CHAR8   *Type,\r
+  CHAR8   *FileName,\r
+  UINT32  LineNumber,\r
+  UINT32  MessageCode,\r
+  CHAR8   *Text,\r
+  CHAR8   *MsgFmt,\r
+  va_list List\r
+  );\r
+\r
 VOID\r
 Error (\r
   CHAR8   *FileName,\r
index 7bec90d..49bb5d3 100644 (file)
@@ -2728,7 +2728,7 @@ Returns:
         //\r
         // Use FFS GUID as its File Name.\r
         //\r
-        PrintGuidToBuffer (&SubFfsFile->Name, SubFfsName, PRINTED_GUID_BUFFER_SIZE, TRUE);\r
+        PrintGuidToBuffer (&SubFfsFile->Name, (UINT8 *) SubFfsName, PRINTED_GUID_BUFFER_SIZE, TRUE);\r
         FfsRebase (FvInfo, SubFfsName, SubFfsFile, (UINTN) SubFfsFile - (UINTN) FfsFile + XipOffset, FvMapFile);\r
       }\r
     }\r
index 44ce838..1b3df49 100644 (file)
@@ -24,9 +24,19 @@ PACKAGE_DATA  gCBuffer;
 PACKAGE_DATA  gRBuffer;\r
 \r
 VOID \r
-CVfrCompiler::DebugError () {\r
-  Error (NULL, 0, 0001, "Error parsing vfr file", " %s", mOptions.VfrFileName);\r
-  //_asm int 3;\r
+CVfrCompiler::DebugError (\r
+  IN CHAR8         *FileName,\r
+  IN UINT32        LineNumber,\r
+  IN UINT32        MessageCode,\r
+  IN CONST CHAR8   *Text,\r
+  IN CONST CHAR8   *MsgFmt,\r
+  ...\r
+  ) \r
+{\r
+  va_list List;\r
+  va_start (List, MsgFmt);\r
+  PrintMessage ((CHAR8 *) "ERROR", FileName, LineNumber, MessageCode, (CHAR8 *) Text, (CHAR8 *) MsgFmt, List);\r
+  va_end (List);\r
 }\r
 \r
 VOID\r
@@ -53,7 +63,7 @@ CVfrCompiler::OptionInitialization (
 {\r
   INT32         Index;\r
   \r
-  SetUtilityName (PROGRAM_NAME);\r
+  SetUtilityName ((CHAR8*) PROGRAM_NAME);\r
 \r
   mOptions.VfrFileName[0]                = '\0';\r
   mOptions.RecordListFile[0]             = '\0';\r
@@ -86,7 +96,7 @@ CVfrCompiler::OptionInitialization (
     } else if (stricmp(Argv[Index], "-i") == 0) {\r
       Index++;\r
       if ((Index >= Argc) || (Argv[Index][0] == '-')) {\r
-        Error (NULL, 0, 1001, "Missing option", "-i missing path argument"); \r
+        DebugError (NULL, 0, 1001, "Missing option", "-i missing path argument"); \r
         goto Fail;\r
       }\r
 \r
@@ -94,7 +104,7 @@ CVfrCompiler::OptionInitialization (
     } else if (stricmp(Argv[Index], "-o") == 0 || stricmp(Argv[Index], "--output-directory") == 0 || stricmp(Argv[Index], "-od") == 0) {\r
       Index++;\r
       if ((Index >= Argc) || (Argv[Index][0] == '-')) {\r
-        Error (NULL, 0, 1001, "Missing option", "-o missing output directory name");\r
+        DebugError (NULL, 0, 1001, "Missing option", "-o missing output directory name");\r
         goto Fail;\r
       }\r
       strcpy (mOptions.OutputDirectory, Argv[Index]);\r
@@ -107,7 +117,7 @@ CVfrCompiler::OptionInitialization (
           strcat (mOptions.OutputDirectory, "\\");\r
         }\r
       }\r
-      DebugMsg (NULL, 0, 9, "Output Directory", mOptions.OutputDirectory);\r
+      DebugMsg (NULL, 0, 9, (CHAR8 *) "Output Directory", mOptions.OutputDirectory);\r
     } else if (stricmp(Argv[Index], "-b") == 0 || stricmp(Argv[Index], "--create-ifr-package") == 0 || stricmp(Argv[Index], "-ibin") == 0) {\r
       mOptions.CreateIfrPkgFile = TRUE;\r
     } else if (stricmp(Argv[Index], "-n") == 0 || stricmp(Argv[Index], "--no-pre-processing") == 0 || stricmp(Argv[Index], "-nopp") == 0) {\r
@@ -115,7 +125,7 @@ CVfrCompiler::OptionInitialization (
     } else if (stricmp(Argv[Index], "-f") == 0 || stricmp(Argv[Index], "--pre-processing-flag") == 0 || stricmp(Argv[Index], "-ppflag") == 0) {\r
       Index++;\r
       if ((Index >= Argc) || (Argv[Index][0] == '-')) {\r
-        Error (NULL, 0, 1001, "Missing option", "-od - missing C-preprocessor argument");\r
+        DebugError (NULL, 0, 1001, "Missing option", "-od - missing C-preprocessor argument");\r
         goto Fail;\r
       }\r
 \r
@@ -123,13 +133,13 @@ CVfrCompiler::OptionInitialization (
     } else if (stricmp(Argv[Index], "-c") == 0 || stricmp(Argv[Index], "--compatible-framework") == 0) {\r
       mOptions.CompatibleMode = TRUE;\r
     } else {\r
-      Error (NULL, 0, 1000, "Unknown option", "unrecognized option %s", Argv[Index]);\r
+      DebugError (NULL, 0, 1000, "Unknown option", "unrecognized option %s", Argv[Index]);\r
       goto Fail;\r
     }\r
   }\r
 \r
   if (Index != Argc - 1) {\r
-    Error (NULL, 0, 1001, "Missing option", "VFR file name is not specified.");\r
+    DebugError (NULL, 0, 1001, "Missing option", "VFR file name is not specified.");\r
     goto Fail;\r
   } else {\r
     strcpy (mOptions.VfrFileName, Argv[Index]);\r
@@ -188,7 +198,7 @@ CVfrCompiler::AppendIncludePath (
   }\r
   IncludePaths = new CHAR8[Len];\r
   if (IncludePaths == NULL) {\r
-    Error (NULL, 0, 4001, "Resource: memory can't be allocated", NULL);\r
+    DebugError (NULL, 0, 4001, "Resource: memory can't be allocated", NULL);\r
     return;\r
   }\r
   IncludePaths[0] = '\0';\r
@@ -217,7 +227,7 @@ CVfrCompiler::AppendCPreprocessorOptions (
   }\r
   Opt = new CHAR8[Len];\r
   if (Opt == NULL) {\r
-    Error (NULL, 0, 4001, "Resource: memory can't be allocated", NULL);\r
+    DebugError (NULL, 0, 4001, "Resource: memory can't be allocated", NULL);\r
     return;\r
   }\r
   Opt[0] = 0;\r
@@ -335,8 +345,8 @@ CVfrCompiler::CVfrCompiler (
   IN CHAR8      **Argv\r
   )\r
 {\r
-  mPreProcessCmd = PREPROCESSOR_COMMAND;\r
-  mPreProcessOpt = PREPROCESSOR_OPTIONS;\r
+  mPreProcessCmd = (CHAR8 *) PREPROCESSOR_COMMAND;\r
+  mPreProcessOpt = (CHAR8 *) PREPROCESSOR_OPTIONS;\r
 \r
   OptionInitialization(Argc, Argv);\r
 \r
@@ -413,7 +423,7 @@ CVfrCompiler::PreProcess (
   }\r
 \r
   if ((pVfrFile = fopen (mOptions.VfrFileName, "r")) == NULL) {\r
-    Error (NULL, 0, 0001, "Error opening the input VFR file", mOptions.VfrFileName);\r
+    DebugError (NULL, 0, 0001, "Error opening the input VFR file", mOptions.VfrFileName);\r
     goto Fail;\r
   }\r
   fclose (pVfrFile);\r
@@ -429,7 +439,7 @@ CVfrCompiler::PreProcess (
 \r
   PreProcessCmd = new CHAR8[CmdLen + 10];\r
   if (PreProcessCmd == NULL) {\r
-    Error (NULL, 0, 4001, "Resource: memory can't be allocated", NULL);\r
+    DebugError (NULL, 0, 4001, "Resource: memory can't be allocated", NULL);\r
     goto Fail;\r
   }\r
   strcpy (PreProcessCmd, mPreProcessCmd), strcat (PreProcessCmd, " ");\r
@@ -444,7 +454,7 @@ CVfrCompiler::PreProcess (
   strcat (PreProcessCmd, mOptions.PreprocessorOutputFileName);\r
 \r
   if (system (PreProcessCmd) != 0) {\r
-    Error (NULL, 0, 0003, "Error parsing file", "failed to spawn C preprocessor on VFR file %s\n", PreProcessCmd);\r
+    DebugError (NULL, 0, 0003, "Error parsing file", "failed to spawn C preprocessor on VFR file %s\n", PreProcessCmd);\r
     goto Fail;\r
   }\r
 \r
@@ -480,7 +490,7 @@ CVfrCompiler::Compile (
   gCVfrErrorHandle.SetInputFile (InFileName);\r
 \r
   if ((pInFile = fopen (InFileName, "r")) == NULL) {\r
-    Error (NULL, 0, 0001, "Error opening the input file", InFileName);\r
+    DebugError (NULL, 0, 0001, "Error opening the input file", InFileName);\r
     goto Fail;\r
   }\r
 \r
@@ -500,7 +510,7 @@ CVfrCompiler::Compile (
 \r
 Fail:\r
   if (!IS_RUN_STATUS(STATUS_DEAD)) {\r
-    Error (NULL, 0, 0003, "Error parsing", "compile error in file %s", InFileName);\r
+    DebugError (NULL, 0, 0003, "Error parsing", "compile error in file %s", InFileName);\r
     SET_RUN_STATUS (STATUS_FAILED);\r
   }\r
   if (pInFile != NULL) {\r
@@ -530,7 +540,7 @@ CVfrCompiler::AdjustBin (
   if (gCBuffer.Buffer != NULL && gRBuffer.Buffer != NULL) {\r
     UINT32 Index;\r
     if (gCBuffer.Size != gRBuffer.Size) {\r
-      Error (NULL, 0, 0001, "Error parsing vfr file", " %s. FormBinary Size 0x%X is not same to RecordBuffer Size 0x%X", mOptions.VfrFileName, gCBuffer.Size, gRBuffer.Size);\r
+      DebugError (NULL, 0, 0001, "Error parsing vfr file", " %s. FormBinary Size 0x%X is not same to RecordBuffer Size 0x%X", mOptions.VfrFileName, gCBuffer.Size, gRBuffer.Size);\r
     }\r
     for (Index = 0; Index < gCBuffer.Size; Index ++) {\r
       if (gCBuffer.Buffer[Index] != gRBuffer.Buffer[Index]) {\r
@@ -538,13 +548,13 @@ CVfrCompiler::AdjustBin (
       }\r
     }\r
     if (Index != gCBuffer.Size) {\r
-      Error (NULL, 0, 0001, "Error parsing vfr file", " %s. the 0x%X byte is different between Form and Record", mOptions.VfrFileName, Index);\r
+      DebugError (NULL, 0, 0001, "Error parsing vfr file", " %s. the 0x%X byte is different between Form and Record", mOptions.VfrFileName, Index);\r
     }\r
-    DebugMsg (NULL, 0, 9, "IFR Buffer", "Form Buffer same to Record Buffer and Size is 0x%X", Index);\r
+    DebugMsg (NULL, 0, 9, (CHAR8 *) "IFR Buffer", (CHAR8 *) "Form Buffer same to Record Buffer and Size is 0x%X", Index);\r
   } else if (gCBuffer.Buffer == NULL && gRBuffer.Buffer == NULL) {\r
     //ok\r
   } else {\r
-    Error (NULL, 0, 0001, "Error parsing vfr file", " %s.Buffer not allocated.", mOptions.VfrFileName);\r
+    DebugError (NULL, 0, 0001, "Error parsing vfr file", " %s.Buffer not allocated.", mOptions.VfrFileName);\r
   }\r
 \r
   //\r
@@ -584,7 +594,7 @@ CVfrCompiler::GenBinary (
 \r
   if (mOptions.CreateIfrPkgFile == TRUE) {\r
     if ((pFile = fopen (mOptions.PkgOutputFileName, "wb")) == NULL) {\r
-      Error (NULL, 0, 0001, "Error opening file", mOptions.PkgOutputFileName);\r
+      DebugError (NULL, 0, 0001, "Error opening file", mOptions.PkgOutputFileName);\r
       goto Fail;\r
     }\r
     if (gCFormPkg.BuildPkg (pFile, &gRBuffer) != VFR_RETURN_SUCCESS) {\r
@@ -627,7 +637,7 @@ CVfrCompiler::GenCFile (
   \r
   if (!mOptions.CreateIfrPkgFile || mOptions.CompatibleMode) {\r
     if ((pFile = fopen (mOptions.COutputFileName, "w")) == NULL) {\r
-      Error (NULL, 0, 0001, "Error opening output C file", mOptions.COutputFileName);\r
+      DebugError (NULL, 0, 0001, "Error opening output C file", mOptions.COutputFileName);\r
       goto Fail;\r
     }\r
 \r
@@ -674,12 +684,12 @@ CVfrCompiler::GenRecordListFile (
     }\r
 \r
     if ((pInFile = fopen (InFileName, "r")) == NULL) {\r
-      Error (NULL, 0, 0001, "Error opening the input VFR preprocessor output file", InFileName);\r
+      DebugError (NULL, 0, 0001, "Error opening the input VFR preprocessor output file", InFileName);\r
       return;\r
     }\r
 \r
     if ((pOutFile = fopen (mOptions.RecordListFile, "w")) == NULL) {\r
-      Error (NULL, 0, 0001, "Error opening the record list file", mOptions.RecordListFile);\r
+      DebugError (NULL, 0, 0001, "Error opening the record list file", mOptions.RecordListFile);\r
       goto Err1;\r
     }\r
 \r
@@ -739,3 +749,4 @@ main (
   return GetUtilityStatus ();\r
 }\r
 \r
+\r
index d3aa8ca..fcd2b24 100644 (file)
@@ -102,7 +102,7 @@ public:
   VOID                GenBinary (VOID);\r
   VOID                GenCFile (VOID);\r
   VOID                GenRecordListFile (VOID);\r
-  VOID                DebugError (VOID);\r
+  VOID                DebugError (IN CHAR8*, IN UINT32, IN UINT32, IN CONST CHAR8*, IN CONST CHAR8*, ...);\r
 };\r
 \r
 #endif\r
index ae5f8c6..3289101 100644 (file)
@@ -194,19 +194,19 @@ VOID
 CVfrErrorHandle::PrintMsg (\r
   IN UINT32               LineNum,\r
   IN CHAR8                *TokName,\r
-  IN CHAR8                *MsgType,\r
-  IN CHAR8                *ErrorMsg\r
+  IN CONST CHAR8          *MsgType,\r
+  IN CONST CHAR8          *ErrorMsg\r
   )\r
 {\r
   CHAR8                  *FileName = NULL;\r
   UINT32                 FileLine;\r
   \r
   if (strncmp ("Warning", MsgType, strlen ("Warning")) == 0) {\r
-    VerboseMsg (ErrorMsg);\r
+    VerboseMsg ((CHAR8 *) ErrorMsg);\r
     return;\r
   }\r
   GetFileNameLineNum (LineNum, &FileName, &FileLine);\r
-  Error (FileName, FileLine, 0x3000, TokName, "\t%s\n", ErrorMsg);\r
+  Error (FileName, FileLine, 0x3000, TokName, (CHAR8 *) "\t%s\n", (CHAR8 *) ErrorMsg);\r
 }\r
 \r
 UINT8\r
@@ -219,7 +219,7 @@ CVfrErrorHandle::HandleError (
   UINT32                 Index;\r
   CHAR8                  *FileName = NULL;\r
   UINT32                 FileLine;\r
-  CHAR8                  *ErrorMsg = NULL;\r
+  CONST CHAR8            *ErrorMsg = NULL;\r
 \r
   if (mVfrErrorHandleTable == NULL) {\r
     return 1;\r
@@ -234,7 +234,7 @@ CVfrErrorHandle::HandleError (
 \r
   if (ErrorMsg != NULL) {\r
     GetFileNameLineNum (LineNum, &FileName, &FileLine);\r
-    Error (FileName, FileLine, 0x3000, TokName, "\t%s\n", ErrorMsg);\r
+    Error (FileName, FileLine, 0x3000, TokName, (CHAR8 *) "\t%s\n", (CHAR8 *) ErrorMsg);\r
     return 1;\r
   } else {\r
     return 0;\r
index 500926a..916e070 100644 (file)
@@ -47,7 +47,7 @@ typedef enum {
 \r
 typedef struct _SVFR_ERROR_HANDLE {\r
   EFI_VFR_RETURN_CODE    mErrorCode;\r
-  CHAR8                  *mErrorMsg;\r
+  CONST CHAR8            *mErrorMsg;\r
 } SVFR_ERROR_HANDLE;\r
 \r
 struct SVfrFileScopeRecord {\r
@@ -74,8 +74,8 @@ public:
   VOID  SetInputFile (IN CHAR8 *);\r
   VOID  ParseFileScopeRecord (IN CHAR8 *, IN UINT32);\r
   VOID  GetFileNameLineNum (IN UINT32, OUT CHAR8 **, OUT UINT32 *);\r
-  UINT8 HandleError (IN EFI_VFR_RETURN_CODE, IN UINT32 LineNum = 0, IN CHAR8 *TokName = "\0");\r
-  VOID  PrintMsg (IN UINT32 LineNum = 0, IN CHAR8 *TokName = "\0", IN CHAR8 *MsgType = "Error", IN CHAR8 *ErrorMsg = "\0");\r
+  UINT8 HandleError (IN EFI_VFR_RETURN_CODE, IN UINT32 LineNum = 0, IN CHAR8 *TokName = NULL);\r
+  VOID  PrintMsg (IN UINT32 LineNum = 0, IN CHAR8 *TokName = NULL, IN CONST CHAR8 *MsgType = "Error", IN CONST CHAR8 *ErrorMsg = "");\r
 };\r
 \r
 #define CHECK_ERROR_RETURN(f, v) do { EFI_VFR_RETURN_CODE r; if ((r = (f)) != (v)) { return r; } } while (0)\r
index 26f0cf8..c679ba6 100644 (file)
@@ -25,7 +25,7 @@ SPendingAssign::SPendingAssign (
   IN VOID   *Addr, \r
   IN UINT32 Len, \r
   IN UINT32 LineNo,\r
-  IN CHAR8  *Msg\r
+  IN CONST CHAR8  *Msg\r
   )\r
 {\r
   mKey    = NULL;\r
@@ -352,11 +352,11 @@ CFormPkg::BuildPkg (
 \r
 VOID\r
 CFormPkg::_WRITE_PKG_LINE (\r
-  IN FILE   *pFile,\r
-  IN UINT32 LineBytes,\r
-  IN CHAR8  *LineHeader,\r
-  IN CHAR8  *BlkBuf,\r
-  IN UINT32 BlkSize\r
+  IN FILE         *pFile,\r
+  IN UINT32       LineBytes,\r
+  IN CONST CHAR8  *LineHeader,\r
+  IN CHAR8        *BlkBuf,\r
+  IN UINT32       BlkSize\r
   )\r
 {\r
   UINT32    Index;\r
@@ -375,11 +375,11 @@ CFormPkg::_WRITE_PKG_LINE (
 \r
 VOID\r
 CFormPkg::_WRITE_PKG_END (\r
-  IN FILE   *pFile,\r
-  IN UINT32 LineBytes,\r
-  IN CHAR8  *LineHeader,\r
-  IN CHAR8  *BlkBuf,\r
-  IN UINT32 BlkSize\r
+  IN FILE         *pFile,\r
+  IN UINT32       LineBytes,\r
+  IN CONST CHAR8  *LineHeader,\r
+  IN CHAR8        *BlkBuf,\r
+  IN UINT32       BlkSize\r
   )\r
 {\r
   UINT32    Index;\r
@@ -483,7 +483,7 @@ CFormPkg::AssignPending (
   IN VOID   *ValAddr, \r
   IN UINT32 ValLen,\r
   IN UINT32 LineNo,\r
-  IN CHAR8  *Msg\r
+  IN CONST CHAR8  *Msg\r
   )\r
 {\r
   SPendingAssign *pNew;\r
index 52e5597..12dc388 100644 (file)
@@ -81,7 +81,7 @@ struct SPendingAssign {
   CHAR8                   *mMsg;\r
   struct SPendingAssign   *mNext;\r
 \r
-  SPendingAssign (IN CHAR8 *, IN VOID *, IN UINT32, IN UINT32, IN CHAR8 *);\r
+  SPendingAssign (IN CHAR8 *, IN VOID *, IN UINT32, IN UINT32, IN CONST CHAR8 *);\r
   ~SPendingAssign ();\r
 \r
   VOID   SetAddrAndLen (IN VOID *, IN UINT32);\r
@@ -108,8 +108,8 @@ private:
 \r
   UINT32              mPkgLength;\r
 \r
-  VOID                _WRITE_PKG_LINE (IN FILE *, IN UINT32 , IN CHAR8 *, IN CHAR8 *, IN UINT32);\r
-  VOID                _WRITE_PKG_END (IN FILE *, IN UINT32 , IN CHAR8 *, IN CHAR8 *, IN UINT32);\r
+  VOID                _WRITE_PKG_LINE (IN FILE *, IN UINT32 , IN CONST CHAR8 *, IN CHAR8 *, IN UINT32);\r
+  VOID                _WRITE_PKG_END (IN FILE *, IN UINT32 , IN CONST CHAR8 *, IN CHAR8 *, IN UINT32);\r
 \r
 private:\r
   SPendingAssign      *PendingAssignList;\r
@@ -131,7 +131,7 @@ public:
   EFI_VFR_RETURN_CODE GenCFile (IN CHAR8 *, IN FILE *, IN PACKAGE_DATA *PkgData = NULL);\r
 \r
 public:\r
-  EFI_VFR_RETURN_CODE AssignPending (IN CHAR8 *, IN VOID *, IN UINT32, IN UINT32, IN CHAR8 *Msg = NULL);\r
+  EFI_VFR_RETURN_CODE AssignPending (IN CHAR8 *, IN VOID *, IN UINT32, IN UINT32, IN CONST CHAR8 *Msg = NULL);\r
   VOID                DoPendingAssign (IN CHAR8 *, IN VOID *, IN UINT32);\r
   bool                HavePendingUnassigned (VOID);\r
   VOID                PendingAssignPrintAll (VOID);\r
index e6f8aa3..83eb26d 100644 (file)
@@ -335,82 +335,89 @@ vfrDataStructFields :
 \r
 dataStructField64 :\r
   << UINT32 ArrayNum = 0; >>\r
-  "UINT64"\r
+  D:"UINT64"\r
   N:StringIdentifier\r
   {\r
     OpenBracket I:Number CloseBracket               << ArrayNum = _STOU32(I->getText()); >>\r
   }\r
-  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), "UINT64", ArrayNum), N); >>\r
+  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), D->getText(), ArrayNum), N); >>\r
   ;\r
 \r
 dataStructField32 :\r
   << UINT32 ArrayNum = 0; >>\r
-  "UINT32"\r
+  D:"UINT32"\r
   N:StringIdentifier\r
   {\r
     OpenBracket I:Number CloseBracket               << ArrayNum = _STOU32(I->getText()); >>\r
   }\r
-  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), "UINT32", ArrayNum), N); >>\r
+  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), D->getText(), ArrayNum), N); >>\r
   ;\r
 \r
 dataStructField16 :\r
-  << UINT32 ArrayNum = 0; >>\r
-  ("UINT16" | "CHAR16")\r
+  << \r
+    UINT32 ArrayNum = 0; \r
+    CHAR8  *TypeName = NULL;\r
+  >>\r
+  (\r
+    D:"UINT16"                                      << TypeName = D->getText();>>\r
+   | \r
+    C:"CHAR16"                                      << TypeName = C->getText();>>\r
+  )\r
   N:StringIdentifier\r
   {\r
     OpenBracket I:Number CloseBracket               << ArrayNum = _STOU32(I->getText()); >>\r
   }\r
-  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), "UINT16", ArrayNum), N); >>\r
+  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), TypeName, ArrayNum), N); >>\r
   ;\r
 \r
 dataStructField8 :\r
   << UINT32 ArrayNum = 0; >>\r
-  "UINT8"\r
+  D:"UINT8"\r
   N:StringIdentifier\r
   {\r
     OpenBracket I:Number CloseBracket               << ArrayNum = _STOU32(I->getText()); >>\r
   }\r
-  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), "UINT8", ArrayNum), N); >>\r
+  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), D->getText(), ArrayNum), N); >>\r
   ;\r
 \r
 dataStructFieldBool :\r
   << UINT32 ArrayNum = 0; >>\r
-  "BOOLEAN"\r
+  D:"BOOLEAN"\r
   N:StringIdentifier\r
   {\r
     OpenBracket I:Number CloseBracket               << ArrayNum = _STOU32(I->getText()); >>\r
   }\r
-  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), "BOOLEAN", ArrayNum), N); >>\r
+  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), D->getText(), ArrayNum), N); >>\r
   ;\r
 \r
 dataStructFieldString :\r
   << UINT32 ArrayNum = 0; >>\r
-  "EFI_STRING_ID"\r
+  D:"EFI_STRING_ID"\r
   N:StringIdentifier\r
   {\r
     OpenBracket I:Number CloseBracket               << ArrayNum = _STOU32(I->getText()); >>\r
   }\r
-  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), "EFI_STRING_ID", ArrayNum), N); >>\r
+  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), D->getText(), ArrayNum), N); >>\r
   ;\r
 \r
 dataStructFieldDate :\r
   << UINT32 ArrayNum = 0; >>\r
-  "EFI_HII_DATE"\r
+  D:"EFI_HII_DATE"\r
   N:StringIdentifier\r
   {\r
     OpenBracket I:Number CloseBracket               << ArrayNum = _STOU32(I->getText()); >>\r
   }\r
-  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), "EFI_HII_DATE", ArrayNum), N); >>\r
+  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), D->getText(), ArrayNum), N); >>\r
   ;\r
 \r
 dataStructFieldTime :\r
   << UINT32 ArrayNum = 0; >>\r
-  "EFI_HII_TIME"\r
+  D:"EFI_HII_TIME"\r
   N:StringIdentifier\r
   {\r
     OpenBracket I:Number CloseBracket               << ArrayNum = _STOU32(I->getText()); >>\r
   }\r
-  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), "EFI_HII_TIME", ArrayNum), N); >>\r
+  ";"                                               << _PCATCH(gCVfrVarDataTypeDB.DataTypeAddField (N->getText(), D->getText(), ArrayNum), N); >>\r
   ;\r
 \r
 dataStructFieldUser :\r
@@ -586,12 +593,13 @@ vfrStatementVarStoreLinear :
   V:Varstore                                        << VSObj.SetLineNo(V->getLine()); >>\r
   (\r
       TN:StringIdentifier ","                       << TypeName = TN->getText(); LineNum = TN->getLine(); >>\r
-    | U8:"UINT8" ","                                << TypeName = "UINT8"; LineNum = U8->getLine(); >>\r
-    | U16:"UINT16" ","                              << TypeName = "UINT16"; LineNum = U16->getLine(); >>\r
-    | U32:"UINT32" ","                              << TypeName = "UINT32"; LineNum = U32->getLine(); >>\r
-    | U64:"UINT64" ","                              << TypeName = "UINT64"; LineNum = U64->getLine(); >>\r
-    | D:"EFI_HII_DATE" ","                          << TypeName = "EFI_HII_DATE"; LineNum = D->getLine(); >>\r
-    | T:"EFI_HII_TIME" ","                          << TypeName = "EFI_HII_TIME"; LineNum = T->getLine(); >>\r
+    | U8:"UINT8" ","                                << TypeName = U8->getText(); LineNum = U8->getLine(); >>\r
+    | U16:"UINT16" ","                              << TypeName = U16->getText(); LineNum = U16->getLine(); >>\r
+    | C16:"CHAR16" ","                              << TypeName = C16->getText(); LineNum = C16->getLine(); >>\r
+    | U32:"UINT32" ","                              << TypeName = U32->getText(); LineNum = U32->getLine(); >>\r
+    | U64:"UINT64" ","                              << TypeName = U64->getText(); LineNum = U64->getLine(); >>\r
+    | D:"EFI_HII_DATE" ","                          << TypeName = D->getText(); LineNum = D->getLine(); >>\r
+    | T:"EFI_HII_TIME" ","                          << TypeName = T->getText(); LineNum = T->getLine(); >>\r
   )\r
   { Key "=" FID:Number ","                          << // Key is used to assign Varid in Framework VFR but no use in UEFI2.1 VFR\r
                                                        if (mCompatibleMode) {\r
@@ -3210,11 +3218,11 @@ private:
   UINT32              _GET_CURRQEST_ARRAY_SIZE();\r
 \r
 public:\r
-  VOID                _PCATCH (IN INTN, IN INTN, IN ANTLRTokenPtr, IN CHAR8 *);\r
+  VOID                _PCATCH (IN INTN, IN INTN, IN ANTLRTokenPtr, IN CONST CHAR8 *);\r
   VOID                _PCATCH (IN EFI_VFR_RETURN_CODE);\r
   VOID                _PCATCH (IN EFI_VFR_RETURN_CODE, IN ANTLRTokenPtr);\r
   VOID                _PCATCH (IN EFI_VFR_RETURN_CODE, IN UINT32);\r
-  VOID                _PCATCH (IN EFI_VFR_RETURN_CODE, IN UINT32, IN CHAR8 *);\r
+  VOID                _PCATCH (IN EFI_VFR_RETURN_CODE, IN UINT32, IN CONST CHAR8 *);\r
 \r
   VOID                syn     (ANTLRAbstractToken  *, ANTLRChar *, SetWordType *, ANTLRTokenType, INT32);\r
 \r
@@ -3231,7 +3239,7 @@ public:
   EFI_FORM_ID         _STOFID (IN CHAR8 *);\r
   EFI_QUESTION_ID     _STOQID (IN CHAR8 *);\r
 \r
-  VOID                _STRCAT (IN OUT CHAR8 **, IN CHAR8 *);\r
+  VOID                _STRCAT (IN OUT CHAR8 **, IN CONST CHAR8 *);\r
 \r
   VOID                _DeclareDefaultLinearVarStore (IN UINT32);\r
   VOID                _DeclareStandardDefaultStorage (IN UINT32);\r
@@ -3367,7 +3375,7 @@ EfiVfrParser::_PCATCH (
   IN INTN                ReturnCode,\r
   IN INTN                ExpectCode,\r
   IN ANTLRTokenPtr       Tok,\r
-  IN CHAR8               *ErrorMsg\r
+  IN CONST CHAR8         *ErrorMsg\r
   )\r
 {\r
   if (ReturnCode != ExpectCode) {\r
@@ -3406,10 +3414,10 @@ VOID
 EfiVfrParser::_PCATCH (\r
   IN EFI_VFR_RETURN_CODE ReturnCode,\r
   IN UINT32              LineNum,\r
-  IN CHAR8               *ErrorMsg\r
+  IN CONST CHAR8         *ErrorMsg\r
   )\r
 {\r
-  mParserStatus = mParserStatus + gCVfrErrorHandle.HandleError (ReturnCode, LineNum, ErrorMsg);\r
+  mParserStatus = mParserStatus + gCVfrErrorHandle.HandleError (ReturnCode, LineNum, (CHAR8 *) ErrorMsg);\r
 }\r
 \r
 VOID\r
@@ -3638,7 +3646,7 @@ EfiVfrParser::_STOQID (
 VOID\r
 EfiVfrParser::_STRCAT (\r
   IN OUT CHAR8 **Dest,\r
-  IN CHAR8     *Src\r
+  IN CONST CHAR8 *Src\r
   )\r
 {\r
   CHAR8   *NewStr;\r
@@ -3674,6 +3682,7 @@ EfiVfrParser::_DeclareDefaultFrameworkVarStore (
   SVfrVarStorageNode    *pNode;\r
   UINT32                TypeSize;\r
   BOOLEAN               FirstNode;\r
+  CONST CHAR8           VarName[] = "Setup";\r
 \r
   FirstNode = TRUE;\r
   pNode = mCVfrDataStorage.GetBufferVarStoreList();\r
@@ -3688,7 +3697,7 @@ EfiVfrParser::_DeclareDefaultFrameworkVarStore (
     VSObj.SetVarStoreId (0x1); //the first and only one Buffer Var Store\r
     VSObj.SetSize ((UINT16) TypeSize);\r
     //VSObj.SetName (gCVfrVarDataTypeDB.mFirstNewDataTypeName);\r
-    VSObj.SetName ("Setup");\r
+    VSObj.SetName ((CHAR8 *) VarName);\r
     VSObj.SetGuid (&mFormsetGuid);\r
 #ifdef VFREXP_DEBUG\r
     printf ("Create the default VarStoreName is %s\n", gCVfrVarDataTypeDB.mFirstNewDataTypeName);\r
@@ -3705,7 +3714,7 @@ EfiVfrParser::_DeclareDefaultFrameworkVarStore (
         VSObj.SetVarStoreId (pNode->mVarStoreId);\r
         VSObj.SetSize ((UINT16) pNode->mStorageInfo.mDataType->mTotalSize);\r
         if (FirstNode) {\r
-          VSObj.SetName ("Setup");\r
+          VSObj.SetName ((CHAR8 *) VarName);\r
           FirstNode = FALSE;\r
         } else {\r
           VSObj.SetName (pNode->mVarStoreName);\r
@@ -3745,6 +3754,10 @@ EfiVfrParser::_DeclareDefaultLinearVarStore (
   UINT32            Index;\r
   CHAR8             **TypeNameList;\r
   UINT32            ListSize;\r
+  CONST CHAR8       DateName[] = "Date";\r
+  CONST CHAR8       TimeName[] = "Time";\r
+  CONST CHAR8       DateType[] = "EFI_HII_DATE";\r
+  CONST CHAR8       TimeType[] = "EFI_HII_TIME";\r
 \r
   gCVfrVarDataTypeDB.GetUserDefinedTypeNameList (&TypeNameList, &ListSize);\r
 \r
@@ -3773,45 +3786,45 @@ EfiVfrParser::_DeclareDefaultLinearVarStore (
 // not required to declare Date and Time VarStore,\r
 // because code to support old format Data and Time\r
 //\r
-  if (gCVfrVarDataTypeDB.IsTypeNameDefined ("Date") == FALSE) {\r
+  if (gCVfrVarDataTypeDB.IsTypeNameDefined ((CHAR8 *) DateName) == FALSE) {\r
     UINT32            Size;\r
     EFI_VARSTORE_ID   VarStoreId;\r
     CIfrVarStore      VSObj;\r
 \r
     VSObj.SetLineNo (LineNo);\r
     mCVfrDataStorage.DeclareBufferVarStore (\r
-                       "Date",\r
+                       (CHAR8 *) DateName,\r
                        &mFormsetGuid,\r
                        &gCVfrVarDataTypeDB,\r
-                       "EFI_HII_DATE",\r
+                       (CHAR8 *) DateType,\r
                        EFI_VARSTORE_ID_INVALID\r
                        );\r
-    mCVfrDataStorage.GetVarStoreId("Date", &VarStoreId);\r
+    mCVfrDataStorage.GetVarStoreId((CHAR8 *) DateName, &VarStoreId);\r
     VSObj.SetVarStoreId (VarStoreId);\r
-    gCVfrVarDataTypeDB.GetDataTypeSize("EFI_HII_DATE", &Size);\r
+    gCVfrVarDataTypeDB.GetDataTypeSize((CHAR8 *) DateType, &Size);\r
     VSObj.SetSize ((UINT16) Size);\r
-    VSObj.SetName ("Date");\r
+    VSObj.SetName ((CHAR8 *) DateName);\r
     VSObj.SetGuid (&mFormsetGuid);\r
   }\r
 \r
-  if (gCVfrVarDataTypeDB.IsTypeNameDefined ("Time") == FALSE) {\r
+  if (gCVfrVarDataTypeDB.IsTypeNameDefined ((CHAR8 *) TimeName) == FALSE) {\r
     UINT32            Size;\r
     EFI_VARSTORE_ID   VarStoreId;\r
     CIfrVarStore      VSObj;\r
 \r
     VSObj.SetLineNo (LineNo);\r
     mCVfrDataStorage.DeclareBufferVarStore (\r
-                       "Time",\r
+                       (CHAR8 *) TimeName,\r
                        &mFormsetGuid,\r
                        &gCVfrVarDataTypeDB,\r
-                       "EFI_HII_TIME",\r
+                       (CHAR8 *) TimeType,\r
                        EFI_VARSTORE_ID_INVALID\r
                        );\r
-    mCVfrDataStorage.GetVarStoreId("Time", &VarStoreId);\r
+    mCVfrDataStorage.GetVarStoreId((CHAR8 *) TimeName, &VarStoreId);\r
     VSObj.SetVarStoreId (VarStoreId);\r
-    gCVfrVarDataTypeDB.GetDataTypeSize("EFI_HII_TIME", &Size);\r
+    gCVfrVarDataTypeDB.GetDataTypeSize((CHAR8 *) TimeType, &Size);\r
     VSObj.SetSize ((UINT16) Size);\r
-    VSObj.SetName ("Time");\r
+    VSObj.SetName ((CHAR8 *) TimeName);\r
     VSObj.SetGuid (&mFormsetGuid);\r
   }\r
 }\r
@@ -3826,7 +3839,7 @@ EfiVfrParser::_DeclareStandardDefaultStorage (
   //\r
   CIfrDefaultStore DSObj;\r
 \r
-  mCVfrDefaultStore.RegisterDefaultStore (DSObj.GetObjBinAddr(), "Standard Defaults", EFI_STRING_ID_INVALID, EFI_HII_DEFAULT_CLASS_STANDARD);\r
+  mCVfrDefaultStore.RegisterDefaultStore (DSObj.GetObjBinAddr(), (CHAR8 *) "Standard Defaults", EFI_STRING_ID_INVALID, EFI_HII_DEFAULT_CLASS_STANDARD);\r
   DSObj.SetLineNo (LineNo);\r
   DSObj.SetDefaultName (EFI_STRING_ID_INVALID);\r
   DSObj.SetDefaultId (EFI_HII_DEFAULT_CLASS_STANDARD);\r
@@ -3836,7 +3849,7 @@ EfiVfrParser::_DeclareStandardDefaultStorage (
   //\r
   CIfrDefaultStore DSObjMF;\r
 \r
-  mCVfrDefaultStore.RegisterDefaultStore (DSObjMF.GetObjBinAddr(), "Standard ManuFacturing", EFI_STRING_ID_INVALID, EFI_HII_DEFAULT_CLASS_MANUFACTURING);\r
+  mCVfrDefaultStore.RegisterDefaultStore (DSObjMF.GetObjBinAddr(), (CHAR8 *) "Standard ManuFacturing", EFI_STRING_ID_INVALID, EFI_HII_DEFAULT_CLASS_MANUFACTURING);\r
   DSObjMF.SetLineNo (LineNo);\r
   DSObjMF.SetDefaultName (EFI_STRING_ID_INVALID);\r
   DSObjMF.SetDefaultId (EFI_HII_DEFAULT_CLASS_MANUFACTURING);\r
index e4a34f5..41ecd51 100644 (file)
@@ -20,11 +20,11 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 \r
 VOID\r
 CVfrBinaryOutput::WriteLine (\r
-  IN FILE   *pFile,\r
-  IN UINT32 LineBytes,\r
-  IN CHAR8  *LineHeader,\r
-  IN CHAR8  *BlkBuf,\r
-  IN UINT32 BlkSize\r
+  IN FILE         *pFile,\r
+  IN UINT32       LineBytes,\r
+  IN CONST CHAR8  *LineHeader,\r
+  IN CHAR8        *BlkBuf,\r
+  IN UINT32       BlkSize\r
   )\r
 {\r
   UINT32    Index;\r
@@ -43,11 +43,11 @@ CVfrBinaryOutput::WriteLine (
 \r
 VOID\r
 CVfrBinaryOutput::WriteEnd (\r
-  IN FILE   *pFile,\r
-  IN UINT32 LineBytes,\r
-  IN CHAR8  *LineHeader,\r
-  IN CHAR8  *BlkBuf,\r
-  IN UINT32 BlkSize\r
+  IN FILE         *pFile,\r
+  IN UINT32       LineBytes,\r
+  IN CONST CHAR8  *LineHeader,\r
+  IN CHAR8        *BlkBuf,\r
+  IN UINT32       BlkSize\r
   )\r
 {\r
   UINT32    Index;\r
@@ -455,7 +455,7 @@ CVfrBufferConfig::~CVfrBufferConfig (
 CVfrBufferConfig gCVfrBufferConfig;\r
 \r
 static struct {\r
-  CHAR8  *mTypeName;\r
+  CONST CHAR8  *mTypeName;\r
   UINT8  mType;\r
   UINT32 mSize;\r
   UINT32 mAlign;\r
@@ -744,20 +744,20 @@ CVfrVarDataTypeDB::InternalTypesListInit (
         SVfrDataField *pDayField   = new SVfrDataField;\r
 \r
         strcpy (pYearField->mFieldName, "Year");\r
-        GetDataType ("UINT8", &pYearField->mFieldType);\r
+        GetDataType ((CHAR8 *)"UINT16", &pYearField->mFieldType);\r
         pYearField->mOffset      = 0;\r
         pYearField->mNext        = pMonthField;\r
         pYearField->mArrayNum    = 0;\r
 \r
         strcpy (pMonthField->mFieldName, "Month");\r
-        GetDataType ("UINT8", &pMonthField->mFieldType);\r
-        pMonthField->mOffset     = 1;\r
+        GetDataType ((CHAR8 *)"UINT8", &pMonthField->mFieldType);\r
+        pMonthField->mOffset     = 2;\r
         pMonthField->mNext       = pDayField;\r
         pMonthField->mArrayNum   = 0;\r
 \r
         strcpy (pDayField->mFieldName, "Day");\r
-        GetDataType ("UINT8", &pDayField->mFieldType);\r
-        pDayField->mOffset       = 2;\r
+        GetDataType ((CHAR8 *)"UINT8", &pDayField->mFieldType);\r
+        pDayField->mOffset       = 3;\r
         pDayField->mNext         = NULL;\r
         pDayField->mArrayNum     = 0;\r
 \r
@@ -768,19 +768,19 @@ CVfrVarDataTypeDB::InternalTypesListInit (
         SVfrDataField *pSecondsField = new SVfrDataField;\r
 \r
         strcpy (pHoursField->mFieldName, "Hours");\r
-        GetDataType ("UINT8", &pHoursField->mFieldType);\r
+        GetDataType ((CHAR8 *)"UINT8", &pHoursField->mFieldType);\r
         pHoursField->mOffset     = 0;\r
         pHoursField->mNext       = pMinutesField;\r
         pHoursField->mArrayNum   = 0;\r
 \r
         strcpy (pMinutesField->mFieldName, "Minutes");\r
-        GetDataType ("UINT8", &pMinutesField->mFieldType);\r
+        GetDataType ((CHAR8 *)"UINT8", &pMinutesField->mFieldType);\r
         pMinutesField->mOffset   = 1;\r
         pMinutesField->mNext     = pSecondsField;\r
         pMinutesField->mArrayNum = 0;\r
 \r
         strcpy (pSecondsField->mFieldName, "Seconds");\r
-        GetDataType ("UINT8", &pSecondsField->mFieldType);\r
+        GetDataType ((CHAR8 *)"UINT8", &pSecondsField->mFieldType);\r
         pSecondsField->mOffset   = 2;\r
         pSecondsField->mNext     = NULL;\r
         pSecondsField->mArrayNum = 0;\r
@@ -853,7 +853,7 @@ CVfrVarDataTypeDB::Pack (
 \r
   if (Action & VFR_PACK_SHOW) {\r
     sprintf (Msg, "value of pragma pack(show) == %d", mPackAlign);\r
-    gCVfrErrorHandle.PrintMsg (LineNum, "", "Warning", Msg);\r
+    gCVfrErrorHandle.PrintMsg (LineNum, NULL, "Warning", Msg);\r
   }\r
 \r
   if (Action & VFR_PACK_PUSH) {\r
@@ -870,7 +870,7 @@ CVfrVarDataTypeDB::Pack (
     SVfrPackStackNode *pNode = NULL;\r
 \r
     if (mPackStack == NULL) {\r
-      gCVfrErrorHandle.PrintMsg (LineNum, "", "Error", "#pragma pack(pop...) : more pops than pushes");\r
+      gCVfrErrorHandle.PrintMsg (LineNum, NULL, "Error", "#pragma pack(pop...) : more pops than pushes");\r
     }\r
 \r
     for (pNode = mPackStack; pNode != NULL; pNode = pNode->mNext) {\r
@@ -884,7 +884,7 @@ CVfrVarDataTypeDB::Pack (
   if (Action & VFR_PACK_ASSIGN) {\r
     PackAlign = (Number > 1) ? Number + Number % 2 : Number;\r
     if ((PackAlign == 0) || (PackAlign > 16)) {\r
-      gCVfrErrorHandle.PrintMsg (LineNum, "", "Error", "expected pragma parameter to be '1', '2', '4', '8', or '16'");\r
+      gCVfrErrorHandle.PrintMsg (LineNum, NULL, "Error", "expected pragma parameter to be '1', '2', '4', '8', or '16'");\r
     } else {\r
       mPackAlign = PackAlign;\r
     }\r
@@ -1843,7 +1843,7 @@ CVfrDataStorage::BufferVarStoreRequestElementAdd (
   EFI_IFR_TYPE_VALUE    Value = gZeroEfiIfrTypeValue;\r
 \r
   for (pNode = mBufferVarStoreList; pNode != NULL; pNode = pNode->mNext) {\r
-    if (strcmp (pNode->mVarStoreName, StoreName) == NULL) {\r
+    if (strcmp (pNode->mVarStoreName, StoreName) == 0) {\r
       break;\r
     }\r
   }\r
@@ -2797,3 +2797,4 @@ BOOLEAN  VfrCompatibleMode = FALSE;
 \r
 CVfrVarDataTypeDB gCVfrVarDataTypeDB;\r
 \r
+\r
index cb15f28..8cfb8c8 100644 (file)
@@ -36,8 +36,8 @@ extern BOOLEAN  VfrCompatibleMode;
 \r
 class CVfrBinaryOutput {\r
 public:\r
-  virtual VOID WriteLine (IN FILE *, IN UINT32, IN CHAR8 *, IN CHAR8 *, IN UINT32);\r
-  virtual VOID WriteEnd (IN FILE *, IN UINT32, IN CHAR8 *, IN CHAR8 *, IN UINT32);\r
+  virtual VOID WriteLine (IN FILE *, IN UINT32, IN CONST CHAR8 *, IN CHAR8 *, IN UINT32);\r
+  virtual VOID WriteEnd (IN FILE *, IN UINT32, IN CONST CHAR8 *, IN CHAR8 *, IN UINT32);\r
 };\r
 \r
 UINT32\r