Revision: 18446
          http://sourceforge.net/p/edk2/code/18446
Author:   hchen30
Date:     2015-09-14 07:12:29 +0000 (Mon, 14 Sep 2015)
Log Message:
-----------
BaseTools/Ecc: Remove checkpoint for STATIC modifier

1. Fix a bug of removing the checkpoint for STATIC modifier 
2. Fix a bug of parsing CONST variable

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hess Chen <[email protected]>
Reviewed-by: YangX Li <[email protected]>

Modified Paths:
--------------
    trunk/edk2/BaseTools/Source/Python/Ecc/Check.py
    trunk/edk2/BaseTools/Source/Python/Ecc/c.py

Modified: trunk/edk2/BaseTools/Source/Python/Ecc/Check.py
===================================================================
--- trunk/edk2/BaseTools/Source/Python/Ecc/Check.py     2015-09-14 05:52:36 UTC 
(rev 18445)
+++ trunk/edk2/BaseTools/Source/Python/Ecc/Check.py     2015-09-14 07:12:29 UTC 
(rev 18446)
@@ -1223,7 +1223,10 @@
             SqlCommand = """select ID, Name from %s where Model = %s""" % 
(FileTable, MODEL_IDENTIFIER_VARIABLE)
             RecordSet = EccGlobalData.gDb.TblFile.Exec(SqlCommand)
             for Record in RecordSet:
-                if not Pattern.match(Record[1]):
+                Var = Record[1]
+                if Var.startswith('CONST'):
+                    Var = Var[5:].lstrip()
+                if not Pattern.match(Var):
                     if not 
EccGlobalData.gException.IsException(ERROR_NAMING_CONVENTION_CHECK_VARIABLE_NAME,
 Record[1]):
                         
EccGlobalData.gDb.TblReport.Insert(ERROR_NAMING_CONVENTION_CHECK_VARIABLE_NAME, 
OtherMsg="The variable name [%s] does not follow the rules" % (Record[1]), 
BelongsToTable=FileTable, BelongsToItem=Record[0])
 

Modified: trunk/edk2/BaseTools/Source/Python/Ecc/c.py
===================================================================
--- trunk/edk2/BaseTools/Source/Python/Ecc/c.py 2015-09-14 05:52:36 UTC (rev 
18445)
+++ trunk/edk2/BaseTools/Source/Python/Ecc/c.py 2015-09-14 07:12:29 UTC (rev 
18446)
@@ -1271,7 +1271,10 @@
         FuncName = Result[5]
         if 
EccGlobalData.gException.IsException(ERROR_C_FUNCTION_LAYOUT_CHECK_RETURN_TYPE, 
FuncName):
             continue
-        Index = Result[0].find(TypeStart)
+        Result0 = Result[0]
+        if Result0.upper().startswith('STATIC'):
+            Result0 = Result0[6:].strip()
+        Index = Result0.find(TypeStart)
         if Index != 0 or Result[3] != 0:
             PrintErrorMsg(ERROR_C_FUNCTION_LAYOUT_CHECK_RETURN_TYPE, '[%s] 
Return Type should appear at the start of line' % FuncName, FileTable, 
Result[1])
 
@@ -1313,9 +1316,10 @@
     for Result in ResultSet:
         ReturnType = GetDataTypeFromModifier(Result[0])
         TypeStart = ReturnType.split()[0]
-#        if len(ReturnType) == 0:
-#            continue
-        Index = Result[0].find(TypeStart)
+        Result0 = Result[0]
+        if Result0.upper().startswith('STATIC'):
+            Result0 = Result0[6:].strip()
+        Index = Result0.find(TypeStart)
         if Index != 0:
             
PrintErrorMsg(ERROR_C_FUNCTION_LAYOUT_CHECK_OPTIONAL_FUNCTIONAL_MODIFIER, '', 
FileTable, Result[1])
 
@@ -1327,8 +1331,6 @@
     for Result in ResultSet:
         ReturnType = GetDataTypeFromModifier(Result[0])
         TypeStart = ReturnType.split()[0]
-#        if len(ReturnType) == 0:
-#            continue
         Result0 = Result[0]
         if Result0.upper().startswith('STATIC'):
             Result0 = Result0[6:].strip()
@@ -1631,6 +1633,8 @@
         Field = Field.strip()
         if Field == '':
             continue
+        if Field.startswith("#"):
+            continue
         # Enum could directly assign value to variable
         Field = Field.split('=')[0].strip()
         TokenList = Field.split()


------------------------------------------------------------------------------
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits

Reply via email to