aslmessages.h revision 1.1.1.21 1 /******************************************************************************
2 *
3 * Module Name: aslmessages.h - Compiler error/warning messages
4 *
5 *****************************************************************************/
6
7 /*
8 * Copyright (C) 2000 - 2021, Intel Corp.
9 * All rights reserved.
10 *
11 * Redistribution and use in source and binary forms, with or without
12 * modification, are permitted provided that the following conditions
13 * are met:
14 * 1. Redistributions of source code must retain the above copyright
15 * notice, this list of conditions, and the following disclaimer,
16 * without modification.
17 * 2. Redistributions in binary form must reproduce at minimum a disclaimer
18 * substantially similar to the "NO WARRANTY" disclaimer below
19 * ("Disclaimer") and any redistribution must be conditioned upon
20 * including a substantially similar Disclaimer requirement for further
21 * binary redistribution.
22 * 3. Neither the names of the above-listed copyright holders nor the names
23 * of any contributors may be used to endorse or promote products derived
24 * from this software without specific prior written permission.
25 *
26 * Alternatively, this software may be distributed under the terms of the
27 * GNU General Public License ("GPL") version 2 as published by the Free
28 * Software Foundation.
29 *
30 * NO WARRANTY
31 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
32 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
33 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
34 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
35 * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
36 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
37 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
38 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
39 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
40 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
41 * POSSIBILITY OF SUCH DAMAGES.
42 */
43
44 #ifndef __ASLMESSAGES_H
45 #define __ASLMESSAGES_H
46
47 /* These values must match error type string tables in aslmessages.c */
48
49 typedef enum
50 {
51 ASL_OPTIMIZATION = 0,
52 ASL_REMARK,
53 ASL_WARNING,
54 ASL_WARNING2,
55 ASL_WARNING3,
56 ASL_ERROR,
57 ASL_NUM_REPORT_LEVELS
58
59 } ASL_MESSAGE_TYPES;
60
61 #define ASL_ERROR_LEVEL_LENGTH 8 /* Length of strings for types above */
62
63 void
64 AhDecodeAslException (
65 char *HexString);
66
67 /*
68 * Exception code blocks, 0 - 999
69 * Available for new exception blocks: 600 - 999
70 */
71 #define ASL_MSG_MAIN_COMPILER 0 /* 0 - 299 */
72 #define ASL_MSG_MAIN_COMPILER_END 299
73
74 #define ASL_MSG_TABLE_COMPILER 300 /* 300 - 499 */
75 #define ASL_MSG_TABLE_COMPILER_END 499
76
77 #define ASL_MSG_PREPROCESSOR 500 /* 500 - 599 */
78 #define ASL_MSG_PREPROCESSOR_END 599
79
80
81 /*
82 * Values (message IDs) for all compiler messages. There are currently
83 * three distinct blocks of error messages (so that they can be expanded
84 * individually):
85 * Main ASL compiler
86 * Data Table compiler
87 * Preprocessor
88 *
89 * NOTE1: This list must match the tables of message strings in the file
90 * aslmessages.c exactly.
91 *
92 * NOTE2: With the introduction of the -vw option to disable specific
93 * messages, new messages should only be added to the end of these
94 * lists, so that values for existing messages are not disturbed.
95 */
96 typedef enum
97 {
98 ASL_MSG_RESERVED = ASL_MSG_MAIN_COMPILER,
99
100 ASL_MSG_ALIGNMENT,
101 ASL_MSG_ALPHANUMERIC_STRING,
102 ASL_MSG_AML_NOT_IMPLEMENTED,
103 ASL_MSG_ARG_COUNT_HI,
104 ASL_MSG_ARG_COUNT_LO,
105 ASL_MSG_ARG_INIT,
106 ASL_MSG_BACKWARDS_OFFSET,
107 ASL_MSG_BUFFER_LENGTH,
108 ASL_MSG_CLOSE,
109 ASL_MSG_COMPILER_INTERNAL,
110 ASL_MSG_COMPILER_RESERVED,
111 ASL_MSG_CONNECTION_MISSING,
112 ASL_MSG_CONNECTION_INVALID,
113 ASL_MSG_CONSTANT_EVALUATION,
114 ASL_MSG_CONSTANT_FOLDED,
115 ASL_MSG_CORE_EXCEPTION,
116 ASL_MSG_DEBUG_FILE_OPEN,
117 ASL_MSG_DEBUG_FILENAME,
118 ASL_MSG_DEPENDENT_NESTING,
119 ASL_MSG_DMA_CHANNEL,
120 ASL_MSG_DMA_LIST,
121 ASL_MSG_DUPLICATE_CASE,
122 ASL_MSG_DUPLICATE_ITEM,
123 ASL_MSG_EARLY_EOF,
124 ASL_MSG_ENCODING_LENGTH,
125 ASL_MSG_EX_INTERRUPT_LIST,
126 ASL_MSG_EX_INTERRUPT_LIST_MIN,
127 ASL_MSG_EX_INTERRUPT_NUMBER,
128 ASL_MSG_FIELD_ACCESS_WIDTH,
129 ASL_MSG_FIELD_UNIT_ACCESS_WIDTH,
130 ASL_MSG_FIELD_UNIT_OFFSET,
131 ASL_MSG_GPE_NAME_CONFLICT,
132 ASL_MSG_HID_LENGTH,
133 ASL_MSG_HID_PREFIX,
134 ASL_MSG_HID_SUFFIX,
135 ASL_MSG_INCLUDE_FILE_OPEN,
136 ASL_MSG_INPUT_FILE_OPEN,
137 ASL_MSG_INTEGER_LENGTH,
138 ASL_MSG_INTEGER_OPTIMIZATION,
139 ASL_MSG_INTERRUPT_LIST,
140 ASL_MSG_INTERRUPT_NUMBER,
141 ASL_MSG_INVALID_ACCESS_SIZE,
142 ASL_MSG_INVALID_ADDR_FLAGS,
143 ASL_MSG_INVALID_CONSTANT_OP,
144 ASL_MSG_INVALID_EISAID,
145 ASL_MSG_INVALID_ESCAPE,
146 ASL_MSG_INVALID_GRAN_FIXED,
147 ASL_MSG_INVALID_GRANULARITY,
148 ASL_MSG_INVALID_LENGTH,
149 ASL_MSG_INVALID_LENGTH_FIXED,
150 ASL_MSG_INVALID_MIN_MAX,
151 ASL_MSG_INVALID_OPERAND,
152 ASL_MSG_INVALID_PERFORMANCE,
153 ASL_MSG_INVALID_PRIORITY,
154 ASL_MSG_INVALID_STRING,
155 ASL_MSG_INVALID_TARGET,
156 ASL_MSG_INVALID_TIME,
157 ASL_MSG_INVALID_TYPE,
158 ASL_MSG_INVALID_UUID,
159 ASL_MSG_ISA_ADDRESS,
160 ASL_MSG_LEADING_ASTERISK,
161 ASL_MSG_LIST_LENGTH_LONG,
162 ASL_MSG_LIST_LENGTH_SHORT,
163 ASL_MSG_LISTING_FILE_OPEN,
164 ASL_MSG_LISTING_FILENAME,
165 ASL_MSG_LOCAL_INIT,
166 ASL_MSG_LOCAL_OUTSIDE_METHOD,
167 ASL_MSG_LONG_LINE,
168 ASL_MSG_MEMORY_ALLOCATION,
169 ASL_MSG_MISSING_ENDDEPENDENT,
170 ASL_MSG_MISSING_STARTDEPENDENT,
171 ASL_MSG_MULTIPLE_DEFAULT,
172 ASL_MSG_MULTIPLE_TYPES,
173 ASL_MSG_NAME_EXISTS,
174 ASL_MSG_NAME_OPTIMIZATION,
175 ASL_MSG_NAMED_OBJECT_IN_WHILE,
176 ASL_MSG_NESTED_COMMENT,
177 ASL_MSG_NO_CASES,
178 ASL_MSG_NO_REGION,
179 ASL_MSG_NO_RETVAL,
180 ASL_MSG_NO_WHILE,
181 ASL_MSG_NON_ASCII,
182 ASL_MSG_BUFFER_FIELD_LENGTH,
183 ASL_MSG_NOT_EXIST,
184 ASL_MSG_NOT_FOUND,
185 ASL_MSG_NOT_METHOD,
186 ASL_MSG_NOT_PARAMETER,
187 ASL_MSG_NOT_REACHABLE,
188 ASL_MSG_NOT_REFERENCED,
189 ASL_MSG_NULL_DESCRIPTOR,
190 ASL_MSG_NULL_STRING,
191 ASL_MSG_OPEN,
192 ASL_MSG_OUTPUT_FILE_OPEN,
193 ASL_MSG_OUTPUT_FILENAME,
194 ASL_MSG_PACKAGE_LENGTH,
195 ASL_MSG_PREPROCESSOR_FILENAME,
196 ASL_MSG_READ,
197 ASL_MSG_RECURSION,
198 ASL_MSG_REGION_BUFFER_ACCESS,
199 ASL_MSG_REGION_BYTE_ACCESS,
200 ASL_MSG_RESERVED_ARG_COUNT_HI,
201 ASL_MSG_RESERVED_ARG_COUNT_LO,
202 ASL_MSG_RESERVED_METHOD,
203 ASL_MSG_RESERVED_NO_RETURN_VAL,
204 ASL_MSG_RESERVED_OPERAND_TYPE,
205 ASL_MSG_RESERVED_PACKAGE_LENGTH,
206 ASL_MSG_RESERVED_RETURN_VALUE,
207 ASL_MSG_RESERVED_USE,
208 ASL_MSG_RESERVED_WORD,
209 ASL_MSG_RESOURCE_FIELD,
210 ASL_MSG_RESOURCE_INDEX,
211 ASL_MSG_RESOURCE_LIST,
212 ASL_MSG_RESOURCE_SOURCE,
213 ASL_MSG_RESULT_NOT_USED,
214 ASL_MSG_RETURN_TYPES,
215 ASL_MSG_SCOPE_FWD_REF,
216 ASL_MSG_SCOPE_TYPE,
217 ASL_MSG_SEEK,
218 ASL_MSG_SERIALIZED,
219 ASL_MSG_SERIALIZED_REQUIRED,
220 ASL_MSG_SINGLE_NAME_OPTIMIZATION,
221 ASL_MSG_SOME_NO_RETVAL,
222 ASL_MSG_STRING_LENGTH,
223 ASL_MSG_SWITCH_TYPE,
224 ASL_MSG_SYNC_LEVEL,
225 ASL_MSG_SYNTAX,
226 ASL_MSG_TABLE_SIGNATURE,
227 ASL_MSG_TAG_LARGER,
228 ASL_MSG_TAG_SMALLER,
229 ASL_MSG_TIMEOUT,
230 ASL_MSG_TOO_MANY_TEMPS,
231 ASL_MSG_TRUNCATION,
232 ASL_MSG_UNKNOWN_RESERVED_NAME,
233 ASL_MSG_UNREACHABLE_CODE,
234 ASL_MSG_UNSUPPORTED,
235 ASL_MSG_UPPER_CASE,
236 ASL_MSG_VENDOR_LIST,
237 ASL_MSG_WRITE,
238 ASL_MSG_RANGE,
239 ASL_MSG_BUFFER_ALLOCATION,
240 ASL_MSG_MISSING_DEPENDENCY,
241 ASL_MSG_ILLEGAL_FORWARD_REF,
242 ASL_MSG_ILLEGAL_METHOD_REF,
243 ASL_MSG_LOCAL_NOT_USED,
244 ASL_MSG_ARG_AS_LOCAL_NOT_USED,
245 ASL_MSG_ARG_NOT_USED,
246 ASL_MSG_CONSTANT_REQUIRED,
247 ASL_MSG_CROSS_TABLE_SCOPE,
248 ASL_MSG_EXCEPTION_NOT_RECEIVED,
249 ASL_MSG_NULL_RESOURCE_TEMPLATE,
250 ASL_MSG_FOUND_HERE,
251 ASL_MSG_ILLEGAL_RECURSION,
252 ASL_MSG_DUPLICATE_INPUT_FILE,
253 ASL_MSG_WARNING_AS_ERROR,
254 ASL_MSG_OEM_TABLE_ID,
255 ASL_MSG_OEM_ID,
256 ASL_MSG_UNLOAD,
257 ASL_MSG_OFFSET,
258 ASL_MSG_LONG_SLEEP,
259 ASL_MSG_PREFIX_NOT_EXIST,
260 ASL_MSG_NAMEPATH_NOT_EXIST,
261 ASL_MSG_REGION_LENGTH,
262 ASL_MSG_TEMPORARY_OBJECT,
263 ASL_MSG_UNDEFINED_EXTERNAL,
264 ASL_MSG_BUFFER_FIELD_OVERFLOW,
265 ASL_MSG_INVALID_SPECIAL_NAME,
266 ASL_MSG_INVALID_PROCESSOR_UID,
267 ASL_MSG_LEGACY_PROCESSOR_OP,
268 ASL_MSG_NAMESTRING_LENGTH,
269 ASL_MSG_CASE_FOUND_HERE,
270 ASL_MSG_EXTERN_INVALID_RET_TYPE,
271 ASL_MSG_EXTERN_INVALID_PARAM_TYPE,
272 ASL_MSG_NAMED_OBJECT_CREATION,
273 ASL_MSG_ARG_COUNT_MISMATCH,
274 ASL_MSG_STATIC_OPREGION_IN_METHOD,
275 ASL_MSG_DECLARATION_TYPE_MISMATCH,
276 ASL_MSG_TYPE_MISMATCH_FOUND_HERE,
277 ASL_MSG_DUPLICATE_EXTERN_MISMATCH,
278 ASL_MSG_DUPLICATE_EXTERN_FOUND_HERE,
279 ASL_MSG_CONDREF_NEEDS_EXTERNAL_DECL,
280 ASL_MSG_EXTERNAL_FOUND_HERE,
281 ASL_MSG_LOWER_CASE_NAMESEG,
282 ASL_MSG_LOWER_CASE_NAMEPATH,
283 ASL_MSG_UUID_NOT_FOUND,
284 ASL_MSG_LEGACY_DDB_TYPE,
285
286
287 /* These messages are used by the Data Table compiler only */
288
289 ASL_MSG_BUFFER_ELEMENT = ASL_MSG_TABLE_COMPILER,
290 ASL_MSG_DIVIDE_BY_ZERO,
291 ASL_MSG_FLAG_VALUE,
292 ASL_MSG_INTEGER_SIZE,
293 ASL_MSG_INVALID_EXPRESSION,
294 ASL_MSG_INVALID_FIELD_NAME,
295 ASL_MSG_INVALID_HEX_INTEGER,
296 ASL_MSG_OEM_TABLE,
297 ASL_MSG_RESERVED_VALUE,
298 ASL_MSG_UNKNOWN_LABEL,
299 ASL_MSG_UNKNOWN_SUBTABLE,
300 ASL_MSG_UNKNOWN_TABLE,
301 ASL_MSG_ZERO_VALUE,
302 ASL_MSG_INVALID_LABEL,
303 ASL_MSG_BUFFER_LIST,
304 ASL_MSG_ENTRY_LIST,
305
306 /* These messages are used by the Preprocessor only */
307
308 ASL_MSG_DIRECTIVE_SYNTAX = ASL_MSG_PREPROCESSOR,
309 ASL_MSG_ENDIF_MISMATCH,
310 ASL_MSG_ERROR_DIRECTIVE,
311 ASL_MSG_EXISTING_NAME,
312 ASL_MSG_INVALID_INVOCATION,
313 ASL_MSG_MACRO_SYNTAX,
314 ASL_MSG_TOO_MANY_ARGUMENTS,
315 ASL_MSG_UNKNOWN_DIRECTIVE,
316 ASL_MSG_UNKNOWN_PRAGMA,
317 ASL_MSG_WARNING_DIRECTIVE,
318 ASL_MSG_INCLUDE_FILE
319
320 } ASL_MESSAGE_IDS;
321
322
323 #endif /* __ASLMESSAGES_H */
324