/** @file\r
- \r
+\r
VfrCompiler error handler.\r
\r
-Copyright (c) 2004 - 2013, Intel Corporation. All rights reserved.<BR>\r
-This program and the accompanying materials \r
-are licensed and made available under the terms and conditions of the BSD License \r
-which accompanies this distribution. The full text of the license may be found at \r
-http://opensource.org/licenses/bsd-license.php \r
- \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
+Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
\r
{ VFR_RETURN_DATA_STRING_ERROR, ": data field string error or not support"},\r
{ VFR_RETURN_DEFAULT_VALUE_REDEFINED, ": default value re-defined with different value"},\r
{ VFR_RETURN_CONSTANT_ONLY, ": only constant is allowed in the expression"},\r
- { VFR_RETURN_VARSTORE_NAME_REDEFINED_ERROR, ": Varstore name is defined by more than one varstores, it can't be referred as varstore, only varstore strucure name could be used."},\r
+ { VFR_RETURN_VARSTORE_NAME_REDEFINED_ERROR, ": Varstore name is defined by more than one varstores, it can't be referred as varstore, only varstore structure name could be used."},\r
+ { VFR_RETURN_BIT_WIDTH_ERROR, ": bit width must be <= sizeof (type) * 8 and the max width can not > 32" },\r
+ { VFR_RETURN_STRING_TO_UINT_OVERFLOW, ": String to UINT* Overflow"},\r
{ VFR_RETURN_CODEUNDEFINED, ": undefined Error Code" }\r
};\r
\r
static SVFR_WARNING_HANDLE VFR_WARNING_HANDLE_TABLE [] = {\r
{ VFR_WARNING_DEFAULT_VALUE_REDEFINED, ": default value re-defined with different value"},\r
+ { VFR_WARNING_ACTION_WITH_TEXT_TWO, ": Action opcode should not have TextTwo part"},\r
+ { VFR_WARNING_OBSOLETED_FRAMEWORK_OPCODE, ": Not recommend to use obsoleted framework opcode"},\r
{ VFR_WARNING_CODEUNDEFINED, ": undefined Warning Code" }\r
};\r
\r
mScopeRecordListTail = NULL;\r
mVfrErrorHandleTable = VFR_ERROR_HANDLE_TABLE;\r
mVfrWarningHandleTable = VFR_WARNING_HANDLE_TABLE;\r
+ mWarningAsError = FALSE;\r
}\r
\r
CVfrErrorHandle::~CVfrErrorHandle (\r
SVfrFileScopeRecord *pNode = NULL;\r
\r
if (mInputFileName != NULL) {\r
- delete mInputFileName;\r
+ delete[] mInputFileName;\r
}\r
\r
while (mScopeRecordListHead != NULL) {\r
}\r
\r
SVfrFileScopeRecord::SVfrFileScopeRecord (\r
- IN CHAR8 *Record, \r
+ IN CHAR8 *Record,\r
IN UINT32 LineNum\r
)\r
{\r
)\r
{\r
if (mFileName != NULL) {\r
- delete mFileName;\r
+ delete[] mFileName;\r
}\r
}\r
\r
VOID\r
CVfrErrorHandle::ParseFileScopeRecord (\r
- IN CHAR8 *Record, \r
+ IN CHAR8 *Record,\r
IN UINT32 WholeScopeLine\r
)\r
{\r
{\r
CHAR8 *FileName = NULL;\r
UINT32 FileLine;\r
- \r
+\r
if (strncmp ("Warning", MsgType, strlen ("Warning")) == 0) {\r
VerboseMsg ((CHAR8 *) ErrorMsg);\r
return;\r
GetFileNameLineNum (LineNum, &FileName, &FileLine);\r
\r
if (mWarningAsError) {\r
- Error (FileName, FileLine, 0x2220, "warning treated as error", NULL);\r
+ Error (FileName, FileLine, 0x2220, (CHAR8 *) "warning treated as error", NULL);\r
}\r
\r
for (Index = 0; mVfrWarningHandleTable[Index].mWarningCode != VFR_WARNING_CODEUNDEFINED; Index++) {\r