1213800Sjkim/******************************************************************************
2213800Sjkim *
3213800Sjkim * Module Name: aslmessages.h - Compiler error/warning messages
4213800Sjkim *
5213800Sjkim *****************************************************************************/
6213800Sjkim
7217365Sjkim/*
8306536Sjkim * Copyright (C) 2000 - 2016, Intel Corp.
9213800Sjkim * All rights reserved.
10213800Sjkim *
11217365Sjkim * Redistribution and use in source and binary forms, with or without
12217365Sjkim * modification, are permitted provided that the following conditions
13217365Sjkim * are met:
14217365Sjkim * 1. Redistributions of source code must retain the above copyright
15217365Sjkim *    notice, this list of conditions, and the following disclaimer,
16217365Sjkim *    without modification.
17217365Sjkim * 2. Redistributions in binary form must reproduce at minimum a disclaimer
18217365Sjkim *    substantially similar to the "NO WARRANTY" disclaimer below
19217365Sjkim *    ("Disclaimer") and any redistribution must be conditioned upon
20217365Sjkim *    including a substantially similar Disclaimer requirement for further
21217365Sjkim *    binary redistribution.
22217365Sjkim * 3. Neither the names of the above-listed copyright holders nor the names
23217365Sjkim *    of any contributors may be used to endorse or promote products derived
24217365Sjkim *    from this software without specific prior written permission.
25213800Sjkim *
26217365Sjkim * Alternatively, this software may be distributed under the terms of the
27217365Sjkim * GNU General Public License ("GPL") version 2 as published by the Free
28217365Sjkim * Software Foundation.
29213800Sjkim *
30217365Sjkim * NO WARRANTY
31217365Sjkim * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
32217365Sjkim * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
33217365Sjkim * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
34217365Sjkim * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
35217365Sjkim * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
36217365Sjkim * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
37217365Sjkim * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
38217365Sjkim * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
39217365Sjkim * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
40217365Sjkim * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
41217365Sjkim * POSSIBILITY OF SUCH DAMAGES.
42217365Sjkim */
43213800Sjkim
44213800Sjkim#ifndef __ASLMESSAGES_H
45213800Sjkim#define __ASLMESSAGES_H
46213800Sjkim
47213800Sjkim
48281075Sdim/* These values must match error type string tables in aslmessages.c */
49281075Sdim
50250838Sjkimtypedef enum
51250838Sjkim{
52250838Sjkim    ASL_OPTIMIZATION = 0,
53250838Sjkim    ASL_REMARK,
54250838Sjkim    ASL_WARNING,
55250838Sjkim    ASL_WARNING2,
56250838Sjkim    ASL_WARNING3,
57250838Sjkim    ASL_ERROR,
58250838Sjkim    ASL_NUM_REPORT_LEVELS
59213800Sjkim
60250838Sjkim} ASL_MESSAGE_TYPES;
61213800Sjkim
62213800Sjkim
63281075Sdim#define ASL_ERROR_LEVEL_LENGTH          8 /* Length of strings for types above */
64250838Sjkim
65281075Sdim/*
66281075Sdim * Exception code blocks, 0 - 999
67281075Sdim * Available for new exception blocks: 600 - 999
68281075Sdim */
69281075Sdim#define ASL_MSG_MAIN_COMPILER           0       /* 0 - 299 */
70281075Sdim#define ASL_MSG_MAIN_COMPILER_END       299
71250838Sjkim
72281075Sdim#define ASL_MSG_TABLE_COMPILER          300     /* 300 - 499 */
73281075Sdim#define ASL_MSG_TABLE_COMPILER_END      499
74250838Sjkim
75281075Sdim#define ASL_MSG_PREPROCESSOR            500     /* 500 - 599 */
76281075Sdim#define ASL_MSG_PREPROCESSOR_END        599
77250838Sjkim
78250838Sjkim
79250838Sjkim/*
80281075Sdim * Values (message IDs) for all compiler messages. There are currently
81281075Sdim * three distinct blocks of error messages (so that they can be expanded
82281075Sdim * individually):
83281075Sdim *      Main ASL compiler
84281075Sdim *      Data Table compiler
85281075Sdim *      Preprocessor
86250838Sjkim *
87281075Sdim * NOTE1: This list must match the tables of message strings in the file
88281075Sdim * aslmessages.c exactly.
89281075Sdim *
90281075Sdim * NOTE2: With the introduction of the -vw option to disable specific
91281075Sdim * messages, new messages should only be added to the end of these
92281075Sdim * lists, so that values for existing messages are not disturbed.
93250838Sjkim */
94213800Sjkimtypedef enum
95213800Sjkim{
96281075Sdim    ASL_MSG_RESERVED = ASL_MSG_MAIN_COMPILER,
97228110Sjkim
98228110Sjkim    ASL_MSG_ALIGNMENT,
99213800Sjkim    ASL_MSG_ALPHANUMERIC_STRING,
100213800Sjkim    ASL_MSG_AML_NOT_IMPLEMENTED,
101213800Sjkim    ASL_MSG_ARG_COUNT_HI,
102213800Sjkim    ASL_MSG_ARG_COUNT_LO,
103213800Sjkim    ASL_MSG_ARG_INIT,
104213800Sjkim    ASL_MSG_BACKWARDS_OFFSET,
105213800Sjkim    ASL_MSG_BUFFER_LENGTH,
106213800Sjkim    ASL_MSG_CLOSE,
107213800Sjkim    ASL_MSG_COMPILER_INTERNAL,
108228110Sjkim    ASL_MSG_COMPILER_RESERVED,
109228110Sjkim    ASL_MSG_CONNECTION_MISSING,
110228110Sjkim    ASL_MSG_CONNECTION_INVALID,
111213800Sjkim    ASL_MSG_CONSTANT_EVALUATION,
112213800Sjkim    ASL_MSG_CONSTANT_FOLDED,
113213800Sjkim    ASL_MSG_CORE_EXCEPTION,
114213800Sjkim    ASL_MSG_DEBUG_FILE_OPEN,
115213800Sjkim    ASL_MSG_DEBUG_FILENAME,
116213800Sjkim    ASL_MSG_DEPENDENT_NESTING,
117213800Sjkim    ASL_MSG_DMA_CHANNEL,
118213800Sjkim    ASL_MSG_DMA_LIST,
119213800Sjkim    ASL_MSG_DUPLICATE_CASE,
120213800Sjkim    ASL_MSG_DUPLICATE_ITEM,
121213800Sjkim    ASL_MSG_EARLY_EOF,
122213800Sjkim    ASL_MSG_ENCODING_LENGTH,
123213800Sjkim    ASL_MSG_EX_INTERRUPT_LIST,
124213800Sjkim    ASL_MSG_EX_INTERRUPT_LIST_MIN,
125213800Sjkim    ASL_MSG_EX_INTERRUPT_NUMBER,
126213800Sjkim    ASL_MSG_FIELD_ACCESS_WIDTH,
127213800Sjkim    ASL_MSG_FIELD_UNIT_ACCESS_WIDTH,
128213800Sjkim    ASL_MSG_FIELD_UNIT_OFFSET,
129228110Sjkim    ASL_MSG_GPE_NAME_CONFLICT,
130228110Sjkim    ASL_MSG_HID_LENGTH,
131228110Sjkim    ASL_MSG_HID_PREFIX,
132228110Sjkim    ASL_MSG_HID_SUFFIX,
133213800Sjkim    ASL_MSG_INCLUDE_FILE_OPEN,
134213800Sjkim    ASL_MSG_INPUT_FILE_OPEN,
135213800Sjkim    ASL_MSG_INTEGER_LENGTH,
136213800Sjkim    ASL_MSG_INTEGER_OPTIMIZATION,
137213800Sjkim    ASL_MSG_INTERRUPT_LIST,
138213800Sjkim    ASL_MSG_INTERRUPT_NUMBER,
139228110Sjkim    ASL_MSG_INVALID_ACCESS_SIZE,
140228110Sjkim    ASL_MSG_INVALID_ADDR_FLAGS,
141213800Sjkim    ASL_MSG_INVALID_CONSTANT_OP,
142213800Sjkim    ASL_MSG_INVALID_EISAID,
143213800Sjkim    ASL_MSG_INVALID_ESCAPE,
144228110Sjkim    ASL_MSG_INVALID_GRAN_FIXED,
145228110Sjkim    ASL_MSG_INVALID_GRANULARITY,
146228110Sjkim    ASL_MSG_INVALID_LENGTH,
147228110Sjkim    ASL_MSG_INVALID_LENGTH_FIXED,
148228110Sjkim    ASL_MSG_INVALID_MIN_MAX,
149213800Sjkim    ASL_MSG_INVALID_OPERAND,
150213800Sjkim    ASL_MSG_INVALID_PERFORMANCE,
151213800Sjkim    ASL_MSG_INVALID_PRIORITY,
152213800Sjkim    ASL_MSG_INVALID_STRING,
153213800Sjkim    ASL_MSG_INVALID_TARGET,
154213800Sjkim    ASL_MSG_INVALID_TIME,
155213800Sjkim    ASL_MSG_INVALID_TYPE,
156213800Sjkim    ASL_MSG_INVALID_UUID,
157228110Sjkim    ASL_MSG_ISA_ADDRESS,
158228110Sjkim    ASL_MSG_LEADING_ASTERISK,
159213800Sjkim    ASL_MSG_LIST_LENGTH_LONG,
160213800Sjkim    ASL_MSG_LIST_LENGTH_SHORT,
161213800Sjkim    ASL_MSG_LISTING_FILE_OPEN,
162213800Sjkim    ASL_MSG_LISTING_FILENAME,
163213800Sjkim    ASL_MSG_LOCAL_INIT,
164228110Sjkim    ASL_MSG_LOCAL_OUTSIDE_METHOD,
165213800Sjkim    ASL_MSG_LONG_LINE,
166213800Sjkim    ASL_MSG_MEMORY_ALLOCATION,
167213800Sjkim    ASL_MSG_MISSING_ENDDEPENDENT,
168213800Sjkim    ASL_MSG_MISSING_STARTDEPENDENT,
169228110Sjkim    ASL_MSG_MULTIPLE_DEFAULT,
170213800Sjkim    ASL_MSG_MULTIPLE_TYPES,
171213800Sjkim    ASL_MSG_NAME_EXISTS,
172213800Sjkim    ASL_MSG_NAME_OPTIMIZATION,
173228110Sjkim    ASL_MSG_NAMED_OBJECT_IN_WHILE,
174213800Sjkim    ASL_MSG_NESTED_COMMENT,
175213800Sjkim    ASL_MSG_NO_CASES,
176228110Sjkim    ASL_MSG_NO_REGION,
177213800Sjkim    ASL_MSG_NO_RETVAL,
178213800Sjkim    ASL_MSG_NO_WHILE,
179213800Sjkim    ASL_MSG_NON_ASCII,
180228110Sjkim    ASL_MSG_NON_ZERO,
181213800Sjkim    ASL_MSG_NOT_EXIST,
182213800Sjkim    ASL_MSG_NOT_FOUND,
183213800Sjkim    ASL_MSG_NOT_METHOD,
184213800Sjkim    ASL_MSG_NOT_PARAMETER,
185213800Sjkim    ASL_MSG_NOT_REACHABLE,
186228110Sjkim    ASL_MSG_NOT_REFERENCED,
187228110Sjkim    ASL_MSG_NULL_DESCRIPTOR,
188228110Sjkim    ASL_MSG_NULL_STRING,
189213800Sjkim    ASL_MSG_OPEN,
190213800Sjkim    ASL_MSG_OUTPUT_FILE_OPEN,
191213800Sjkim    ASL_MSG_OUTPUT_FILENAME,
192213800Sjkim    ASL_MSG_PACKAGE_LENGTH,
193233250Sjkim    ASL_MSG_PREPROCESSOR_FILENAME,
194213800Sjkim    ASL_MSG_READ,
195213800Sjkim    ASL_MSG_RECURSION,
196213800Sjkim    ASL_MSG_REGION_BUFFER_ACCESS,
197213800Sjkim    ASL_MSG_REGION_BYTE_ACCESS,
198213800Sjkim    ASL_MSG_RESERVED_ARG_COUNT_HI,
199213800Sjkim    ASL_MSG_RESERVED_ARG_COUNT_LO,
200213800Sjkim    ASL_MSG_RESERVED_METHOD,
201228110Sjkim    ASL_MSG_RESERVED_NO_RETURN_VAL,
202213800Sjkim    ASL_MSG_RESERVED_OPERAND_TYPE,
203246849Sjkim    ASL_MSG_RESERVED_PACKAGE_LENGTH,
204213800Sjkim    ASL_MSG_RESERVED_RETURN_VALUE,
205213800Sjkim    ASL_MSG_RESERVED_USE,
206213800Sjkim    ASL_MSG_RESERVED_WORD,
207213800Sjkim    ASL_MSG_RESOURCE_FIELD,
208213800Sjkim    ASL_MSG_RESOURCE_INDEX,
209213800Sjkim    ASL_MSG_RESOURCE_LIST,
210213800Sjkim    ASL_MSG_RESOURCE_SOURCE,
211228110Sjkim    ASL_MSG_RESULT_NOT_USED,
212213800Sjkim    ASL_MSG_RETURN_TYPES,
213213800Sjkim    ASL_MSG_SCOPE_FWD_REF,
214213800Sjkim    ASL_MSG_SCOPE_TYPE,
215213800Sjkim    ASL_MSG_SEEK,
216228110Sjkim    ASL_MSG_SERIALIZED,
217250838Sjkim    ASL_MSG_SERIALIZED_REQUIRED,
218213800Sjkim    ASL_MSG_SINGLE_NAME_OPTIMIZATION,
219213800Sjkim    ASL_MSG_SOME_NO_RETVAL,
220228110Sjkim    ASL_MSG_STRING_LENGTH,
221213800Sjkim    ASL_MSG_SWITCH_TYPE,
222213800Sjkim    ASL_MSG_SYNC_LEVEL,
223213800Sjkim    ASL_MSG_SYNTAX,
224213800Sjkim    ASL_MSG_TABLE_SIGNATURE,
225228110Sjkim    ASL_MSG_TAG_LARGER,
226228110Sjkim    ASL_MSG_TAG_SMALLER,
227228110Sjkim    ASL_MSG_TIMEOUT,
228213800Sjkim    ASL_MSG_TOO_MANY_TEMPS,
229245582Sjkim    ASL_MSG_TRUNCATION,
230213800Sjkim    ASL_MSG_UNKNOWN_RESERVED_NAME,
231213800Sjkim    ASL_MSG_UNREACHABLE_CODE,
232213800Sjkim    ASL_MSG_UNSUPPORTED,
233228110Sjkim    ASL_MSG_UPPER_CASE,
234213800Sjkim    ASL_MSG_VENDOR_LIST,
235213800Sjkim    ASL_MSG_WRITE,
236239340Sjkim    ASL_MSG_RANGE,
237240716Sjkim    ASL_MSG_BUFFER_ALLOCATION,
238281075Sdim    ASL_MSG_MISSING_DEPENDENCY,
239281075Sdim    ASL_MSG_ILLEGAL_FORWARD_REF,
240281075Sdim    ASL_MSG_ILLEGAL_METHOD_REF,
241306536Sjkim    ASL_MSG_LOCAL_NOT_USED,
242306536Sjkim    ASL_MSG_ARG_AS_LOCAL_NOT_USED,
243306536Sjkim    ASL_MSG_ARG_NOT_USED,
244306536Sjkim    ASL_MSG_CONSTANT_REQUIRED,
245306536Sjkim    ASL_MSG_CROSS_TABLE_SCOPE,
246216471Sjkim
247281075Sdim    /* These messages are used by the Data Table compiler only */
248228110Sjkim
249281075Sdim    ASL_MSG_BUFFER_ELEMENT = ASL_MSG_TABLE_COMPILER,
250228110Sjkim    ASL_MSG_DIVIDE_BY_ZERO,
251228110Sjkim    ASL_MSG_FLAG_VALUE,
252228110Sjkim    ASL_MSG_INTEGER_SIZE,
253228110Sjkim    ASL_MSG_INVALID_EXPRESSION,
254213800Sjkim    ASL_MSG_INVALID_FIELD_NAME,
255213800Sjkim    ASL_MSG_INVALID_HEX_INTEGER,
256228110Sjkim    ASL_MSG_OEM_TABLE,
257213800Sjkim    ASL_MSG_RESERVED_VALUE,
258228110Sjkim    ASL_MSG_UNKNOWN_LABEL,
259228110Sjkim    ASL_MSG_UNKNOWN_SUBTABLE,
260213800Sjkim    ASL_MSG_UNKNOWN_TABLE,
261281075Sdim    ASL_MSG_ZERO_VALUE,
262213800Sjkim
263281075Sdim    /* These messages are used by the Preprocessor only */
264213800Sjkim
265281075Sdim    ASL_MSG_DIRECTIVE_SYNTAX = ASL_MSG_PREPROCESSOR,
266281075Sdim    ASL_MSG_ENDIF_MISMATCH,
267281075Sdim    ASL_MSG_ERROR_DIRECTIVE,
268281075Sdim    ASL_MSG_EXISTING_NAME,
269281075Sdim    ASL_MSG_INVALID_INVOCATION,
270281075Sdim    ASL_MSG_MACRO_SYNTAX,
271281075Sdim    ASL_MSG_TOO_MANY_ARGUMENTS,
272281075Sdim    ASL_MSG_UNKNOWN_DIRECTIVE,
273281075Sdim    ASL_MSG_UNKNOWN_PRAGMA,
274281075Sdim    ASL_MSG_WARNING_DIRECTIVE,
275284460Sjkim    ASL_MSG_INCLUDE_FILE
276213800Sjkim
277281075Sdim} ASL_MESSAGE_IDS;
278213800Sjkim
279213800Sjkim
280213800Sjkim#endif  /* __ASLMESSAGES_H */
281