]>
Commit | Line | Data |
---|---|---|
30fdf114 LG |
1 | ## @file\r |
2 | # Standardized Error Hanlding infrastructures.\r | |
3 | #\r | |
40d841f6 LG |
4 | # Copyright (c) 2008 - 2010, Intel Corporation. All rights reserved.<BR>\r |
5 | # This program and the accompanying materials\r | |
30fdf114 LG |
6 | # are licensed and made available under the terms and conditions of the BSD License\r |
7 | # which accompanies this distribution. The full text of the license may be found at\r | |
8 | # http://opensource.org/licenses/bsd-license.php\r | |
9 | #\r | |
10 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r | |
11 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r | |
12 | #\r | |
13 | \r | |
14 | ERROR_GENERAL_CHECK_ALL = 1000\r | |
15 | ERROR_GENERAL_CHECK_NO_TAB = 1001\r | |
16 | ERROR_GENERAL_CHECK_INDENTATION = 1002\r | |
17 | ERROR_GENERAL_CHECK_LINE = 1003\r | |
18 | ERROR_GENERAL_CHECK_NO_ASM = 1004\r | |
19 | ERROR_GENERAL_CHECK_NO_PROGMA = 1005\r | |
20 | ERROR_GENERAL_CHECK_CARRIAGE_RETURN = 1006\r | |
21 | ERROR_GENERAL_CHECK_FILE_EXISTENCE = 1007\r | |
e56468c0 | 22 | ERROR_GENERAL_CHECK_NON_ACSII = 1008\r |
30fdf114 LG |
23 | \r |
24 | ERROR_SPACE_CHECK_ALL = 2000\r | |
25 | \r | |
26 | ERROR_PREDICATE_EXPRESSION_CHECK_ALL = 3000\r | |
27 | ERROR_PREDICATE_EXPRESSION_CHECK_BOOLEAN_VALUE = 3001\r | |
28 | ERROR_PREDICATE_EXPRESSION_CHECK_NO_BOOLEAN_OPERATOR = 3002\r | |
29 | ERROR_PREDICATE_EXPRESSION_CHECK_COMPARISON_NULL_TYPE = 3003\r | |
30 | \r | |
31 | ERROR_HEADER_CHECK_ALL = 4000\r | |
32 | ERROR_HEADER_CHECK_FILE = 4001\r | |
33 | ERROR_HEADER_CHECK_FUNCTION = 4002\r | |
34 | \r | |
35 | ERROR_C_FUNCTION_LAYOUT_CHECK_ALL = 5000\r | |
36 | ERROR_C_FUNCTION_LAYOUT_CHECK_RETURN_TYPE = 5001\r | |
37 | ERROR_C_FUNCTION_LAYOUT_CHECK_OPTIONAL_FUNCTIONAL_MODIFIER = 5002\r | |
38 | ERROR_C_FUNCTION_LAYOUT_CHECK_FUNCTION_NAME = 5003\r | |
39 | ERROR_C_FUNCTION_LAYOUT_CHECK_FUNCTION_PROTO_TYPE = 5004\r | |
40 | ERROR_C_FUNCTION_LAYOUT_CHECK_FUNCTION_BODY = 5005\r | |
41 | ERROR_C_FUNCTION_LAYOUT_CHECK_DATA_DECLARATION = 5006\r | |
42 | ERROR_C_FUNCTION_LAYOUT_CHECK_NO_INIT_OF_VARIABLE = 5007\r | |
43 | ERROR_C_FUNCTION_LAYOUT_CHECK_NO_STATIC = 5008\r | |
52302d4d LG |
44 | ERROR_C_FUNCTION_LAYOUT_CHECK_FUNCTION_PROTO_TYPE_2 = 5009\r |
45 | ERROR_C_FUNCTION_LAYOUT_CHECK_FUNCTION_PROTO_TYPE_3 = 5010\r | |
30fdf114 LG |
46 | \r |
47 | ERROR_INCLUDE_FILE_CHECK_ALL = 6000\r | |
48 | ERROR_INCLUDE_FILE_CHECK_IFNDEF_STATEMENT_1 = 6001\r | |
49 | ERROR_INCLUDE_FILE_CHECK_IFNDEF_STATEMENT_2 = 6002\r | |
50 | ERROR_INCLUDE_FILE_CHECK_IFNDEF_STATEMENT_3 = 6003\r | |
51 | ERROR_INCLUDE_FILE_CHECK_DATA = 6004\r | |
52 | ERROR_INCLUDE_FILE_CHECK_NAME = 6005\r | |
53 | \r | |
54 | ERROR_DECLARATION_DATA_TYPE_CHECK_ALL = 7000\r | |
55 | ERROR_DECLARATION_DATA_TYPE_CHECK_NO_USE_C_TYPE = 7001\r | |
56 | ERROR_DECLARATION_DATA_TYPE_CHECK_IN_OUT_MODIFIER = 7002\r | |
57 | ERROR_DECLARATION_DATA_TYPE_CHECK_EFI_API_MODIFIER = 7003\r | |
58 | ERROR_DECLARATION_DATA_TYPE_CHECK_ENUMERATED_TYPE = 7004\r | |
59 | ERROR_DECLARATION_DATA_TYPE_CHECK_STRUCTURE_DECLARATION = 7005\r | |
60 | ERROR_DECLARATION_DATA_TYPE_CHECK_SAME_STRUCTURE = 7007\r | |
61 | ERROR_DECLARATION_DATA_TYPE_CHECK_UNION_TYPE = 7006\r | |
62 | ERROR_DECLARATION_DATA_TYPE_CHECK_NESTED_STRUCTURE = 7008\r | |
63 | \r | |
64 | ERROR_NAMING_CONVENTION_CHECK_ALL = 8000\r | |
65 | ERROR_NAMING_CONVENTION_CHECK_DEFINE_STATEMENT = 8001\r | |
66 | ERROR_NAMING_CONVENTION_CHECK_TYPEDEF_STATEMENT = 8002\r | |
67 | ERROR_NAMING_CONVENTION_CHECK_IFNDEF_STATEMENT = 8003\r | |
68 | ERROR_NAMING_CONVENTION_CHECK_PATH_NAME = 8004\r | |
69 | ERROR_NAMING_CONVENTION_CHECK_VARIABLE_NAME = 8005\r | |
70 | ERROR_NAMING_CONVENTION_CHECK_FUNCTION_NAME = 8006\r | |
71 | ERROR_NAMING_CONVENTION_CHECK_SINGLE_CHARACTER_VARIABLE = 8007\r | |
72 | \r | |
73 | ERROR_DOXYGEN_CHECK_ALL = 9000\r | |
74 | ERROR_DOXYGEN_CHECK_FILE_HEADER = 9001\r | |
75 | ERROR_DOXYGEN_CHECK_FUNCTION_HEADER = 9002\r | |
76 | ERROR_DOXYGEN_CHECK_COMMENT_DESCRIPTION = 9003\r | |
77 | ERROR_DOXYGEN_CHECK_COMMENT_FORMAT = 9004\r | |
78 | ERROR_DOXYGEN_CHECK_COMMAND = 9005\r | |
79 | \r | |
80 | ERROR_META_DATA_FILE_CHECK_ALL = 10000\r | |
81 | ERROR_META_DATA_FILE_CHECK_PATH_NAME = 10001\r | |
82 | ERROR_META_DATA_FILE_CHECK_LIBRARY_INSTANCE_1 = 10002\r | |
83 | ERROR_META_DATA_FILE_CHECK_LIBRARY_INSTANCE_2 = 10003\r | |
84 | ERROR_META_DATA_FILE_CHECK_LIBRARY_INSTANCE_DEPENDENT = 10004\r | |
85 | ERROR_META_DATA_FILE_CHECK_LIBRARY_INSTANCE_ORDER = 10005\r | |
86 | ERROR_META_DATA_FILE_CHECK_LIBRARY_NO_USE = 10006\r | |
87 | ERROR_META_DATA_FILE_CHECK_BINARY_INF_IN_FDF = 10007\r | |
88 | ERROR_META_DATA_FILE_CHECK_PCD_DUPLICATE = 10008\r | |
89 | ERROR_META_DATA_FILE_CHECK_PCD_FLASH = 10009\r | |
90 | ERROR_META_DATA_FILE_CHECK_PCD_NO_USE = 10010\r | |
91 | ERROR_META_DATA_FILE_CHECK_DUPLICATE_GUID = 10011\r | |
92 | ERROR_META_DATA_FILE_CHECK_DUPLICATE_PROTOCOL = 10012\r | |
93 | ERROR_META_DATA_FILE_CHECK_DUPLICATE_PPI = 10013\r | |
94 | ERROR_META_DATA_FILE_CHECK_MODULE_FILE_NO_USE = 10014\r | |
95 | ERROR_META_DATA_FILE_CHECK_PCD_TYPE = 10015\r | |
40d841f6 | 96 | ERROR_META_DATA_FILE_CHECK_MODULE_FILE_GUID_DUPLICATION = 10016\r |
2bcc713e | 97 | ERROR_META_DATA_FILE_CHECK_LIBRARY_NAME_DUPLICATE = 10017\r |
30fdf114 LG |
98 | \r |
99 | ERROR_SPELLING_CHECK_ALL = 11000\r | |
100 | \r | |
101 | gEccErrorMessage = {\r | |
102 | ERROR_GENERAL_CHECK_ALL : "",\r | |
103 | ERROR_GENERAL_CHECK_NO_TAB : "'TAB' character is not allowed in source code, please replace each 'TAB' with two spaces",\r | |
104 | ERROR_GENERAL_CHECK_INDENTATION : "Indentation does not follow coding style",\r | |
105 | ERROR_GENERAL_CHECK_LINE : "The width of each line does not follow coding style",\r | |
106 | ERROR_GENERAL_CHECK_NO_ASM : "There should be no use of _asm in the source file",\r | |
107 | ERROR_GENERAL_CHECK_NO_PROGMA : """There should be no use of "#progma" in source file except "#pragma pack(#)\"""",\r | |
108 | ERROR_GENERAL_CHECK_CARRIAGE_RETURN : "There should be a carriage return at the end of the file",\r | |
109 | ERROR_GENERAL_CHECK_FILE_EXISTENCE : "File not found",\r | |
e56468c0 | 110 | ERROR_GENERAL_CHECK_NON_ACSII : "File has invalid Non-ACSII char",\r |
52302d4d | 111 | \r |
30fdf114 | 112 | ERROR_SPACE_CHECK_ALL : "",\r |
52302d4d | 113 | \r |
30fdf114 LG |
114 | ERROR_PREDICATE_EXPRESSION_CHECK_ALL : "",\r |
115 | ERROR_PREDICATE_EXPRESSION_CHECK_BOOLEAN_VALUE : "Boolean values and variable type BOOLEAN should not use explicit comparisons to TRUE or FALSE",\r | |
116 | ERROR_PREDICATE_EXPRESSION_CHECK_NO_BOOLEAN_OPERATOR : "Non-Boolean comparisons should use a compare operator (==, !=, >, < >=, <=)",\r | |
117 | ERROR_PREDICATE_EXPRESSION_CHECK_COMPARISON_NULL_TYPE : "A comparison of any pointer to zero must be done via the NULL type",\r | |
52302d4d | 118 | \r |
30fdf114 LG |
119 | ERROR_HEADER_CHECK_ALL : "",\r |
120 | ERROR_HEADER_CHECK_FILE : "File header doesn't exist",\r | |
121 | ERROR_HEADER_CHECK_FUNCTION : "Function header doesn't exist",\r | |
52302d4d | 122 | \r |
30fdf114 LG |
123 | ERROR_C_FUNCTION_LAYOUT_CHECK_ALL : "",\r |
124 | ERROR_C_FUNCTION_LAYOUT_CHECK_RETURN_TYPE : "Return type of a function should exist and in the first line",\r | |
125 | ERROR_C_FUNCTION_LAYOUT_CHECK_OPTIONAL_FUNCTIONAL_MODIFIER : "Any optional functional modifiers should exist and next to the return type",\r | |
126 | ERROR_C_FUNCTION_LAYOUT_CHECK_FUNCTION_NAME : """Function name should be left justified, followed by the beginning of the parameter list, with the closing parenthesis on its own line, indented two spaces""",\r | |
127 | ERROR_C_FUNCTION_LAYOUT_CHECK_FUNCTION_PROTO_TYPE : "Function prototypes in include files have the same form as function definitions",\r | |
52302d4d LG |
128 | ERROR_C_FUNCTION_LAYOUT_CHECK_FUNCTION_PROTO_TYPE_2 : "Function prototypes in include files have different parameter number with function definitions",\r |
129 | ERROR_C_FUNCTION_LAYOUT_CHECK_FUNCTION_PROTO_TYPE_3 : "Function prototypes in include files have different parameter modifier with function definitions",\r | |
30fdf114 LG |
130 | ERROR_C_FUNCTION_LAYOUT_CHECK_FUNCTION_BODY : "The body of a function should be contained by open and close braces that must be in the first column",\r |
131 | ERROR_C_FUNCTION_LAYOUT_CHECK_DATA_DECLARATION : "The data declarations should be the first code in a module",\r | |
132 | ERROR_C_FUNCTION_LAYOUT_CHECK_NO_INIT_OF_VARIABLE : "There should be no initialization of a variable as part of its declaration",\r | |
133 | ERROR_C_FUNCTION_LAYOUT_CHECK_NO_STATIC : "There should be no use of STATIC for functions",\r | |
52302d4d | 134 | \r |
30fdf114 LG |
135 | ERROR_INCLUDE_FILE_CHECK_ALL : "",\r |
136 | ERROR_INCLUDE_FILE_CHECK_IFNDEF_STATEMENT_1 : "All include file contents should be guarded by a #ifndef statement.",\r | |
137 | ERROR_INCLUDE_FILE_CHECK_IFNDEF_STATEMENT_2 : "The #ifndef must be the first line of code following the file header comment",\r | |
138 | ERROR_INCLUDE_FILE_CHECK_IFNDEF_STATEMENT_3 : "The #endif must appear on the last line in the file",\r | |
139 | ERROR_INCLUDE_FILE_CHECK_DATA : "Include files should contain only public or only private data and cannot contain code or define data variables",\r | |
140 | ERROR_INCLUDE_FILE_CHECK_NAME : "No permission for the inlcude file with same names",\r | |
52302d4d | 141 | \r |
30fdf114 LG |
142 | ERROR_DECLARATION_DATA_TYPE_CHECK_ALL : "",\r |
143 | ERROR_DECLARATION_DATA_TYPE_CHECK_NO_USE_C_TYPE : "There should be no use of int, unsigned, char, void, static, long in any .c, .h or .asl files",\r | |
144 | ERROR_DECLARATION_DATA_TYPE_CHECK_IN_OUT_MODIFIER : """The modifiers IN, OUT, OPTIONAL, and UNALIGNED should be used only to qualify arguments to a function and should not appear in a data type declaration""",\r | |
145 | ERROR_DECLARATION_DATA_TYPE_CHECK_EFI_API_MODIFIER : "The EFIAPI modifier should be used at the entry of drivers, events, and member functions of protocols",\r | |
146 | ERROR_DECLARATION_DATA_TYPE_CHECK_ENUMERATED_TYPE : "Enumerated Type should have a 'typedef' and the name must be in capital letters",\r | |
147 | ERROR_DECLARATION_DATA_TYPE_CHECK_STRUCTURE_DECLARATION : "Structure Type should have a 'typedef' and the name must be in capital letters",\r | |
148 | ERROR_DECLARATION_DATA_TYPE_CHECK_SAME_STRUCTURE : "No permission for the structure with same names",\r | |
149 | ERROR_DECLARATION_DATA_TYPE_CHECK_UNION_TYPE : "Union Type should have a 'typedef' and the name must be in capital letters",\r | |
150 | ERROR_DECLARATION_DATA_TYPE_CHECK_NESTED_STRUCTURE : "Complex types should be typedef-ed",\r | |
52302d4d | 151 | \r |
30fdf114 LG |
152 | ERROR_NAMING_CONVENTION_CHECK_ALL : "",\r |
153 | ERROR_NAMING_CONVENTION_CHECK_DEFINE_STATEMENT : "Only capital letters are allowed to be used for #define declarations",\r | |
154 | ERROR_NAMING_CONVENTION_CHECK_TYPEDEF_STATEMENT : "Only capital letters are allowed to be used for typedef declarations",\r | |
155 | ERROR_NAMING_CONVENTION_CHECK_IFNDEF_STATEMENT : "The #ifndef at the start of an include file should use both prefix and postfix underscore characters, '_'",\r | |
156 | ERROR_NAMING_CONVENTION_CHECK_PATH_NAME : """Path name does not follow the rules: 1. First character should be upper case 2. Must contain lower case characters 3. No white space characters""",\r | |
157 | ERROR_NAMING_CONVENTION_CHECK_VARIABLE_NAME : """Variable name does not follow the rules: 1. First character should be upper case 2. Must contain lower case characters 3. No white space characters 4. Global variable name must start with a 'g'""",\r | |
158 | ERROR_NAMING_CONVENTION_CHECK_FUNCTION_NAME : """Function name does not follow the rules: 1. First character should be upper case 2. Must contain lower case characters 3. No white space characters""",\r | |
159 | ERROR_NAMING_CONVENTION_CHECK_SINGLE_CHARACTER_VARIABLE : "There should be no use of short (single character) variable names",\r | |
52302d4d | 160 | \r |
30fdf114 LG |
161 | ERROR_DOXYGEN_CHECK_ALL : "",\r |
162 | ERROR_DOXYGEN_CHECK_FILE_HEADER : "The file headers should follow Doxygen special documentation blocks in section 2.3.5",\r | |
163 | ERROR_DOXYGEN_CHECK_FUNCTION_HEADER : "The function headers should follow Doxygen special documentation blocks in section 2.3.5",\r | |
164 | ERROR_DOXYGEN_CHECK_COMMENT_DESCRIPTION : """The first line of text in a comment block should be a brief description of the element being documented and the brief description must end with a period.""",\r | |
165 | ERROR_DOXYGEN_CHECK_COMMENT_FORMAT : "For comment line with '///< ... text ...' format, if it is used, it should be after the code section",\r | |
52302d4d LG |
166 | ERROR_DOXYGEN_CHECK_COMMAND : "Only Doxygen commands '@bug', '@todo', '@example', '@file', '@attention', '@param', '@post', '@pre', '@retval', '@return', '@sa', '@since', '@test', '@note', '@par' are allowed to mark the code",\r |
167 | \r | |
30fdf114 LG |
168 | ERROR_META_DATA_FILE_CHECK_ALL : "",\r |
169 | ERROR_META_DATA_FILE_CHECK_PATH_NAME : "The file defined in meta-data does not exist",\r | |
52302d4d | 170 | ERROR_META_DATA_FILE_CHECK_LIBRARY_INSTANCE_1 : "A library instances defined for a given module (or dependent library instance) doesn't match the module's type.",\r |
30fdf114 LG |
171 | ERROR_META_DATA_FILE_CHECK_LIBRARY_INSTANCE_2 : "A library instance must specify the Supported Module Types in its INF file",\r |
172 | ERROR_META_DATA_FILE_CHECK_LIBRARY_INSTANCE_DEPENDENT : "A library instance must be defined for all dependent library classes",\r | |
173 | ERROR_META_DATA_FILE_CHECK_LIBRARY_INSTANCE_ORDER : "The library Instances specified by the LibraryClasses sections should be listed in order of dependencies",\r | |
174 | ERROR_META_DATA_FILE_CHECK_LIBRARY_NO_USE : "There should be no unnecessary inclusion of library classes in the INF file",\r | |
2bcc713e | 175 | ERROR_META_DATA_FILE_CHECK_LIBRARY_NAME_DUPLICATE : "Duplicate Library Class Name found",\r |
30fdf114 LG |
176 | ERROR_META_DATA_FILE_CHECK_BINARY_INF_IN_FDF : "An INF file is specified in the FDF file, but not in the DSC file, therefore the INF file must be for a Binary module only",\r |
177 | ERROR_META_DATA_FILE_CHECK_PCD_DUPLICATE : "Duplicate PCDs found",\r | |
178 | ERROR_META_DATA_FILE_CHECK_PCD_FLASH : "PCD settings in the FDF file should only be related to flash",\r | |
179 | ERROR_META_DATA_FILE_CHECK_PCD_NO_USE : "There should be no PCDs declared in INF files that are not specified in in either a DSC or FDF file",\r | |
180 | ERROR_META_DATA_FILE_CHECK_DUPLICATE_GUID : "Duplicate GUID found",\r | |
181 | ERROR_META_DATA_FILE_CHECK_DUPLICATE_PROTOCOL : "Duplicate PROTOCOL found",\r | |
182 | ERROR_META_DATA_FILE_CHECK_DUPLICATE_PPI : "Duplicate PPI found",\r | |
52302d4d | 183 | ERROR_META_DATA_FILE_CHECK_MODULE_FILE_NO_USE : "No used module files found",\r |
30fdf114 | 184 | ERROR_META_DATA_FILE_CHECK_PCD_TYPE : "Wrong C code function used for this kind of PCD",\r |
40d841f6 | 185 | ERROR_META_DATA_FILE_CHECK_MODULE_FILE_GUID_DUPLICATION : "Module file has FILE_GUID collision with other module file",\r |
30fdf114 LG |
186 | ERROR_SPELLING_CHECK_ALL : "",\r |
187 | }\r | |
188 | \r |