fcml  1.1.3
fcml_errors.h
Go to the documentation of this file.
1 /*
2  * FCML - Free Code Manipulation Library.
3  * Copyright (C) 2010-2015 Slawomir Wojtasiak
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2.1 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18  */
19 
26 #ifndef FCML_ASM_ERRORS_H_
27 #define FCML_ASM_ERRORS_H_
28 
29 #include "fcml_lib_export.h"
30 
31 #include "fcml_types.h"
32 
83 };
84 
126 };
127 
134 };
135 
139 typedef fcml_uint16_t fcml_ceh_error;
140 
148 
150 typedef struct fcml_st_ceh_error_info {
154  fcml_string message;
160 
168 
169 #endif /* FCML_ASM_ERRORS_H_ */
Error returned by parsers when there is undefined symbol used.
Definition: fcml_errors.h:80
Value out of range, for example 32 bit value used as segment selector.
Definition: fcml_errors.h:115
fcml_en_ceh_error_level
Error levels.
Definition: fcml_errors.h:142
Expression attempts to divide by 0.
Definition: fcml_errors.h:111
Invalid addressing mode.
Definition: fcml_errors.h:133
struct fcml_st_ceh_error_info * next_error
Next error/warning on the list.
Definition: fcml_errors.h:152
Value out of range.
Definition: fcml_errors.h:131
Parsed line exceed maximal allowed length.
Definition: fcml_errors.h:125
There is not enough memory to complete operation.
Definition: fcml_errors.h:44
Unsupported operating mode.
Definition: fcml_errors.h:58
User chosen unsupported addressing form.
Definition: fcml_errors.h:72
Syntax error from parser.
Definition: fcml_errors.h:117
Assembler can return this error code if there is not allowed prefix defined for given instruction...
Definition: fcml_errors.h:74
Chosen operation is not supported in case of given configuration.
Definition: fcml_errors.h:56
Container for all collected errors and warnings.
Definition: fcml_errors.h:162
Instruction do not support one of the defined operands.
Definition: fcml_errors.h:64
Chosen addressing form can not be encoded as for example ModR/M field.
Definition: fcml_errors.h:60
Invalid function arguments.
Definition: fcml_errors.h:46
Wrong value type used in given context.
Definition: fcml_errors.h:113
fcml_en_ceh_error_globals
All global error codes are placed here.
Definition: fcml_errors.h:40
Handles Win32 DLL symbols importing/exporting.
Address size (Address size attribute) is not allowed in given context.
Definition: fcml_errors.h:70
Used mainly in case of integers and offsets.
Definition: fcml_errors.h:54
Labels are not supported.
Definition: fcml_errors.h:82
Segment register can not be overridden.
Definition: fcml_errors.h:101
fcml_en_ceh_message_warnings
Codes for textual warnings.
Definition: fcml_errors.h:129
Component hasn't been initialized yet.
Definition: fcml_errors.h:50
Operand size (Operand size attribute) is not allowed in given context.
Definition: fcml_errors.h:68
Unsupported instruction form (Instruction may be supported, but not with given set of operands)...
Definition: fcml_errors.h:62
Warnings are reported when processing does not need to be stopped.
Definition: fcml_errors.h:144
Unknown mnemonic.
Definition: fcml_errors.h:66
fcml_en_ceh_error_level level
Error level.
Definition: fcml_errors.h:158
fcml_ceh_error code
Error code.
Definition: fcml_errors.h:156
Wrong register type used in place of segment register.
Definition: fcml_errors.h:119
Wrong register.
Definition: fcml_errors.h:78
To many operands passed to parser.
Definition: fcml_errors.h:103
Unsupported pseudo-op value.
Definition: fcml_errors.h:105
HLE prefix is not allowed in given context.
Definition: fcml_errors.h:107
An internal error occurred.
Definition: fcml_errors.h:48
There is more than one HLE prefix.
Definition: fcml_errors.h:109
Symbol is undefined.
Definition: fcml_errors.h:123
fcml_string message
Error message.
Definition: fcml_errors.h:154
Operation succeed.
Definition: fcml_errors.h:42
Incomplete instruction.
Definition: fcml_errors.h:52
struct fcml_st_ceh_error_container fcml_st_ceh_error_container
Container for all collected errors and warnings.
Information about one particular error/warning.
Definition: fcml_errors.h:150
Errors are reported when something more important happened and processing should be stopped...
Definition: fcml_errors.h:146
Symbol is already defined in parser's symbol table.
Definition: fcml_errors.h:121
struct fcml_st_ceh_error_info fcml_st_ceh_error_info
Information about one particular error/warning.
fcml_st_ceh_error_info * errors
All errors and warnings going here.
Definition: fcml_errors.h:164
fcml_st_ceh_error_info * last_error
Pointer to the last error/warning on the list.
Definition: fcml_errors.h:166
fcml_uint16_t fcml_ceh_error
All error codes should be held in variables of this type.
Definition: fcml_errors.h:139
Wrong register type.
Definition: fcml_errors.h:76
Types declarations.
fcml_en_ceh_message_errors
Error codes dedicated to textual messages.
Definition: fcml_errors.h:99