MPLAB XC8 C Compiler User's Guide User
User Manual: Pdf
Open the PDF directly: View PDF 
Page Count: 580 [warning: Documents this large are best viewed by clicking the View PDF Link!]
- MPLAB XC8 C Compiler User's Guide
- Table of Contents
- Preface
- Chapter 1. Compiler Overview
- Chapter 2. Common C Interface- 2.1 Introduction
- 2.2 Background – The Desire for Portable Code
- 2.3 Using the CCI
- 2.4 ANSI Standard Refinement- 2.4.1 Source File Encoding
- 2.4.2 The Prototype for main
- 2.4.3 Header File Specification
- 2.4.4 Include Search Paths
- 2.4.5 The Number of Significant Initial Characters in an Identifier
- 2.4.6 Sizes of Types
- 2.4.7 Plain char Types
- 2.4.8 Signed Integer Representation
- 2.4.9 Integer Conversion
- 2.4.10 Bitwise Operations on Signed Values
- 2.4.11 Right-shifting Signed Values
- 2.4.12 Conversion of Union Member Accessed Using Member With Different Type
- 2.4.13 Default Bit-field int Type
- 2.4.14 Bit-fields Straddling a Storage Unit Boundary
- 2.4.15 The Allocation Order of Bit-fields
- 2.4.16 The NULL Macro
- 2.4.17 Floating-point Sizes
 
- 2.5 ANSI Standard Extensions- 2.5.1.1 Example
- 2.5.1.2 Differences
- 2.5.1.3 Migration to the CCI
- 2.5.2.1 Example
- 2.5.2.2 Differences
- 2.5.2.3 Migration to the CCI
- 2.5.2.4 Caveats
- 2.5.3.1 Example
- 2.5.3.2 Differences
- 2.5.3.3 Migration to the CCI
- 2.5.3.4 Caveats
- 2.5.4.1 Example
- 2.5.4.2 Differences
- 2.5.4.3 Migration to the CCI
- 2.5.4.4 Caveats
- 2.5.5.1 Example
- 2.5.5.2 Differences
- 2.5.5.3 Migration to the CCI
- 2.5.5.4 Caveats
- 2.5.6.1 Example
- 2.5.6.2 Differences
- 2.5.6.3 Migration to the CCI
- 2.5.6.4 Caveats
- 2.5.7.1 Example
- 2.5.7.2 Differences
- 2.5.7.3 Migration to the CCI
- 2.5.7.4 Caveats
- 2.5.8.1 Example
- 2.5.8.2 Differences
- 2.5.8.3 Migration to the CCI
- 2.5.8.4 Caveats
- 2.5.9.1 Example
- 2.5.9.2 Differences
- 2.5.9.3 Migration to the CCI
- 2.5.9.4 Caveats
- 2.5.10.1 Example
- 2.5.10.2 Differences
- 2.5.10.3 Migration to the CCI
- 2.5.10.4 Caveats
- 2.5.11.1 Example
- 2.5.11.2 Differences
- 2.5.11.3 Migration to the CCI
- 2.5.11.4 Caveats
- 2.5.12.1 Example
- 2.5.12.2 Differences
- 2.5.12.3 Migration to the CCI
- 2.5.12.4 Caveats
- 2.5.13.1 Example
- 2.5.13.2 Differences
- 2.5.13.3 Migration to the CCI
- 2.5.13.4 Caveats
- 2.5.14.1 Example
- 2.5.14.2 Differences
- 2.5.14.3 Migration to the CCI
- 2.5.14.4 Caveats
- 2.5.15.1 Example
- 2.5.15.2 Differences
- 2.5.15.3 Migration to the CCI
- 2.5.15.4 Caveats
- 2.5.16.1 Example
- 2.5.16.2 Differences
- 2.5.16.3 Migration to the CCI
- 2.5.16.4 Caveats
 
- 2.6 Compiler Features
 
- Chapter 3. How To’s- 3.1 Introduction
- 3.2 Installing and Activating the Compiler
- 3.3 Invoking the Compiler- 3.3.1 How Do I Compile From Within MPLAB X IDE?
- 3.3.2 How Do I Compile on the Command-line?
- 3.3.3 How Do I Compile Using a Make Utility?
- 3.3.4 How Can I Select Which Compiler I Want to Build With?
- 3.3.5 How Can I Change the Compiler's Operating Mode?
- 3.3.6 How Do I Build Libraries?
- 3.3.7 How Do I Know What Compiler Options Are Available and What They Do?
- 3.3.8 How Do I Know What the Build Options in MPLAB X IDE Do?
- 3.3.9 What is Different About an MPLAB X IDE Debug Build?
 
- 3.4 Writing Source Code
- 3.5 Getting My Application to Do What I Want- 3.5.1 What Can Cause Glitches on Output Ports?
- 3.5.2 How Do I Link Bootloaders and Downloadable Applications?
- 3.5.3 What Do I Need to Do When Compiling to Use a Debugger?
- 3.5.4 How Can I Have Code Executed Straight After Reset?
- 3.5.5 How Do I Share Data Between Interrupt and Main-line Code?
- 3.5.6 How Can I Prevent Misuse of My Code?
- 3.5.7 How Do I Use Printf to Send Text to a Peripheral?
- 3.5.8 How Do I Calibrate the Oscillator on My Device?
- 3.5.9 How Do I Place Variables in the PIC18 Device’s External Program Memory?
- 3.5.10 How Can I Implement a Delay in My Code?
- 3.5.11 How Can I Rotate a Variable?
- 3.5.12 How Can I Stop Variables Being Cleared at Startup?
 
- 3.6 Understanding the Compilation Process- 3.6.1 What’s the Difference Between the Free, Standard and PRO Modes?
- 3.6.2 How Can I Make My Code Smaller?
- 3.6.3 How Can I Reduce RAM Usage?
- 3.6.4 How Can I Make My Code Faster?
- 3.6.5 How Can I Speed Up Programming Times
- 3.6.6 How Does the Compiler Place Everything in Memory?
- 3.6.7 How Can I Make My Interrupt Routine Faster?
- 3.6.8 How Big Can C Variables Be?
- 3.6.9 How Do I Utilize All the RAM Banks on My Device?
- 3.6.10 How Do I Utilize the Linear Memory on Enhanced Mid-range PIC Devices?
- 3.6.11 What Devices are Supported by the Compiler?
- 3.6.12 How Do I Know What Code the Compiler Is Producing?
- 3.6.13 How Can I Tell How Big a Function Is?
- 3.6.14 How Do I Know What Resources Are Being Used by Each Function?
- 3.6.15 How Do I Find Out Where Variables and Functions Have Been Positioned?
- 3.6.16 Why Are Some Objects Positioned Into Memory That I Reserved?
- 3.6.17 How Do I Know How Much Memory Is Still Available?
- 3.6.18 How Do I Use Library Files in My Project?
- 3.6.19 What Optimizations Are Employed by the Compiler?
- 3.6.20 Why Do I Get Out-of-memory Errors When I Select a Debugger?
- 3.6.21 How Do I Know Which Stack Model the Compiler Has Assigned to a Function?
- 3.6.22 How Do I Know What Value Has Been Programmed in the Configuration Bits or ID Location?
 
- 3.7 Fixing Code That Does Not Work- 3.7.1 How Do I Find Out What an Warning/error Message Means?
- 3.7.2 How Do I Find the Code that Caused Compiler Errors or Warnings in My Program?
- 3.7.3 How Can I Stop Spurious Warnings From Being Produced?
- 3.7.4 Why Can’t I Even Blink an LED?
- 3.7.5 How Do I Know If the Hardware Stack Has Overflowed?
- 3.7.6 How Do I Fix a “Can’t find space...” Error?
- 3.7.7 How Do I Fix a “Can’t generate code...” Error?
- 3.7.8 How Do I Fix a Fixup Overflow Error?
- 3.7.9 What Can Cause Corrupted Variables and Code Failure When Using Interrupts?
 
 
- Chapter 4. XC8 Command-line Driver- 4.1 Introduction
- 4.2 Invoking the Compiler
- 4.3 The Compilation Sequence
- 4.4 Runtime Files
- 4.5 Compiler Output
- 4.6 Compiler Messages
- 4.7 MPLAB XC8 Driver Options
- 4.8 Option Descriptions- Table 4-6: Driver Options
- 4.8.1 -C: Compile to Object File
- 4.8.2 -D: Define Macro
- 4.8.3 -E: Redirect Compiler Errors to a File
- 4.8.4 -I: Include Search Path
- 4.8.5 -L: Scan Library
- 4.8.6 -L-: Adjust Linker Options Directly
- 4.8.7 -M: Generate Map File
- 4.8.8 -N: Identifier Length
- 4.8.9 -O: Specify Output File
- 4.8.10 -P: Preprocess Assembly Files
- 4.8.11 -Q: Quiet Mode
- 4.8.12 -S: Compile to Assembler Code
- 4.8.13 -U: Undefine a Macro
- 4.8.14 -V: Verbose Compile
- 4.8.15 --ADDRQUAL: Set Compiler Response to Memory Qualifiers
- 4.8.16 --ASMLIST: Generate Assembler List Files
- 4.8.17 --CHECKSUM: Calculate a Checksum
- 4.8.18 --CHIP: Define Device
- 4.8.19 --CHIPINFO: Display List of Supported Devices
- 4.8.20 --CLIST: Generate C Listing File
- 4.8.21 --CODEOFFSET: Offset Program Code to Address
- 4.8.22 --DEBUGGER: Select Debugger Type
- 4.8.23 --DOUBLE: Select Kind of Double Types
- 4.8.24 --ECHO: Echo Command Line Before Processing
- 4.8.25 --EMI: Select External Memory Interface Operating Mode
- 4.8.26 --ERRATA: Specify Errata Workarounds
- 4.8.27 --ERRFORMAT: Define Format for Compiler Messages
- 4.8.28 --ERRORS: Maximum Number of Errors
- 4.8.29 --EXT: Specify C Language Extensions
- 4.8.30 --FILL: Fill Unused Program Memory
- 4.8.31 --FLOAT: Select Kind of Float Types
- 4.8.32 --GETOPTION: Get Command-line Options
- 4.8.33 --HELP: Display Help
- 4.8.34 --HTML: Generate HTML Diagnostic Files
- 4.8.35 --LANG: Specify the Language for Messages
- 4.8.36 --MEMMAP: Display Memory Map
- 4.8.37 --MODE: Choose Compiler Operating Mode
- 4.8.38 --MSGDISABLE: Disable Warning Messages
- 4.8.39 --MSGFORMAT: Set Advisory Message Format
- 4.8.40 --NODEL: Do Not Remove Temporary Files
- 4.8.41 --OBJDIR: Specify a Directory for Intermediate Files
- 4.8.42 --OPT: Invoke Compiler Optimizations
- 4.8.43 --OUTDIR: Specify a Directory for Output Files
- 4.8.44 --OUTPUT= type: Specify Output File Type
- 4.8.45 --PARSER: Specify Parser Mode
- 4.8.46 --PASS1: Compile to P-code
- 4.8.47 --PRE: Produce Preprocessed Source Code
- 4.8.48 --PROTO: Generate Prototypes
- 4.8.49 --RAM: Adjust RAM Ranges
- 4.8.50 --ROM: Adjust ROM Ranges
- 4.8.51 --RUNTIME: Specify Runtime Environment
- 4.8.52 --SCANDEP: Scan for Dependencies
- 4.8.53 --SERIAL: Store a Value at this Program Memory Address
- 4.8.54 --SETOPTION: Set the Command-line Options for Application
- 4.8.55 --SHROUD: Obfuscate P-code Files
- 4.8.56 --STACK: Specify Data Stack Type For Entire Program
- 4.8.57 --STRICT: Strict ANSI Conformance
- 4.8.58 --SUMMARY: Select Memory Summary Output Type
- 4.8.59 --TIME: Report Time Taken For Each Phase of Build Process
- 4.8.60 --VER: Display the Compiler’s Version Information
- 4.8.61 --WARN: Set Warning Level
- 4.8.62 --WARNFORMAT: Set Warning Message Format
 
- 4.9 MPLAB X Option Equivalents
 
- Chapter 5. C Language Features- 5.1 Introduction
- 5.2 ANSI C Standard Issues
- 5.3 Device-Related Features- 5.3.1 Device Support
- 5.3.2 Instruction Set Support
- 5.3.3 Device Header Files
- 5.3.4 Stacks
- 5.3.5 Configuration Bit Access
- 5.3.6 Using SFRs From C Code
- 5.3.7 ID Locations
- 5.3.8 Bit Instructions
- 5.3.9 Hardware Multiply Instructions
- 5.3.10 Baseline PIC MCU Special Instructions
- 5.3.11 Oscillator Calibration Constants
- 5.3.12 REAL ICE Support
- 5.3.13 Function profiling
 
- 5.4 Supported Data Types and Variables
- 5.5 Memory Allocation and Access
- 5.6 Operators and Statements
- 5.7 Register Usage
- 5.8 Functions
- 5.9 Interrupts
- 5.10 Main, Runtime Startup and Reset
- 5.11 Library Routines
- 5.12 Mixing C and Assembly Code
- 5.13 Optimizations
- 5.14 Preprocessing- 5.14.1 C Language Comments
- 5.14.2 Preprocessor Directives
- 5.14.3 Predefined Macros
- 5.14.4 Pragma Directives- Table 5-16: Pragma directives
- 5.14.4.1 The #pragma addrqual Directive
- 5.14.4.2 The #pragma config Directive
- 5.14.4.3 The #pragma inline Directive
- 5.14.4.4 The #pragma Intrinsic Directive
- 5.14.4.5 The #pragma interrupt_level Directive
- 5.14.4.6 The #pragma pack Directive
- 5.14.4.7 The #pragma printf_check Directive
- 5.14.4.8 The #pragma psect Directive
- 5.14.4.9 The #pragma regsused Directive
- 5.14.4.10 The #pragma switch Directive
- 5.14.4.11 The #pragma warning Directive
 
 
- 5.15 Linking Programs- 5.15.1 Program Sections
- 5.15.2 Compiler-Generated Psects
- 5.15.3 Default Linker Classes
- 5.15.4 Changing and Linking the Allocated Section
- 5.15.5 Replacing Library Modules
- 5.15.6 Signature Checking
- 5.15.7 Linker-Defined Symbols
 
 
- Chapter 6. Macro Assembler- 6.1 Introduction
- 6.2 Assembler Usage
- 6.3 Options- Table 6-1: ASPIC Command-line Options
- 6.3.1 -A: Generate Assembly File
- 6.3.2 -C: Specify Chip Info File
- 6.3.3 -E: Specify Error Format/File
- 6.3.4 -F: Specify Page Length
- 6.3.5 -H: Print Hexadecimal Constant
- 6.3.6 -I: List Macro Expansions
- 6.3.7 -L: Generate an Assembly Listing
- 6.3.8 -O: Optimize Assembly
- 6.3.9 -O: Specify Output File
- 6.3.10 -T: Specify Listing Page Width
- 6.3.11 -V: Produce Assembly Debug Information
- 6.3.12 -VER: Specify Version Information
- 6.3.13 -X: Strip Local Symbols
- 6.3.14 --CHIP: Specify Device Name
- 6.3.15 --DISL: Disable Messages
- 6.3.16 --EDF: Set Message File Path
- 6.3.17 --EMAX: Specify Maximum Number of Errors
- 6.3.18 --OPT: Specify Optimization Type
- 6.3.19 --VER: Print Version Number
 
- 6.4 MPLAB XC8 Assembly Language- 6.4.1 Assembly Instruction Deviations
- 6.4.2 Statement Formats
- 6.4.3 Characters
- 6.4.4 Comments
- 6.4.5 Constants
- 6.4.6 Identifiers
- 6.4.7 Expressions
- 6.4.8 Program Sections
- 6.4.9 Assembler Directives- Table 6-5: ASPIC Assembler Directives
- 6.4.9.1 GLOBAL
- 6.4.9.2 END
- 6.4.9.3 PSECT
- 6.4.9.4 ORG
- 6.4.9.5 EQU
- 6.4.9.6 SET
- 6.4.9.7 DB
- 6.4.9.8 DW
- 6.4.9.9 DDW
- 6.4.9.10 DS
- 6.4.9.11 DABS
- 6.4.9.12 IF, ELSIF, ELSE and ENDIF
- 6.4.9.13 MACRO and ENDM
- 6.4.9.14 LOCAL
- 6.4.9.15 ALIGN
- 6.4.9.16 REPT
- 6.4.9.17 IRP and IRPC
- 6.4.9.18 BANKSEL
- 6.4.9.19 PAGESEL
- 6.4.9.20 PROCESSOR
- 6.4.9.21 SIGNAT
 
- 6.4.10 Assembler Controls
 
- 6.5 Assembly-Level Optimizations
- 6.6 Assembly List Files
 
- Chapter 7. Linker
- Chapter 8. Utilities- 8.1 Introduction
- 8.2 Librarian
- 8.3 HEXMATE- 8.3.1 HEXMATE Command Line Options- Table 8-3: HEXMATE Command-line Options
- 8.3.1.1 specifications,filename.HEX
- 8.3.1.2 + Prefix
- 8.3.1.3 -ADDRESSING
- 8.3.1.4 -BREAK
- 8.3.1.5 -CK
- 8.3.1.6 -FILL
- 8.3.1.7 -FIND
- 8.3.1.8 -FIND...,DELETE
- 8.3.1.9 -FIND...,REPLACE
- 8.3.1.10 -FORMAT
- 8.3.1.11 -HELP
- 8.3.1.12 -LOGFILE
- 8.3.1.13 -MASK
- 8.3.1.14 -Ofile
- 8.3.1.15 -SERIAL
- 8.3.1.16 -SIZE
- 8.3.1.17 -STRING
- 8.3.1.18 -STRPACK
 
 
- 8.3.1 HEXMATE Command Line Options
 
- Appendix A. Library Functions- A.1 Introduction
- __builtin_software_breakpoint
- __CONFIG (Baseline & Mid-Range Devices)
- __CONFIG (PIC18)
- __Debug_break
- __DELAY_MS, __DELAY_US, __delaywdt_us, __delaywdt_Ms
- __EEPROM_DATA
- __IDLOC
- __IDLOC7
- _DELAY() , _delaywdt
- __OSCCAL_VAL
- _DELAY3()
- ABS
- ACOS
- ASCTIME
- ASIN
- ASSERT
- ATAN
- ATAN2
- ATOF
- ATOI
- ATOL
- BSEARCH
- CEIL
- CGETS
- CLRWDT
- COS
- COSH, SINH, TANH
- CPUTS
- CTIME
- DI, EI
- DIV
- EEPROM routines
- EVAL_POLY
- EXP
- FABS
- FLASH Routines
- FLOOR
- FMOD
- FREXP
- FTOA
- GETCH
- GETCHE
- GETCHAR
- GETS
- GET_CAL_DATA
- GMTIME
- ISALNUM, ISALPHA, ISDIGIT, ISLOWER, et. al.
- ISDIG
- ITOA
- LABS
- LDEXP
- LDIV
- LOCALTIME
- LOG, LOG10
- LONGJMP
- LTOA
- MEMCHR
- MEMCMP
- MEMCPY
- MEMMOVE
- MEMSET
- MKTIME
- MODF
- NOP
- POW
- PRINTF, VPRINTF
- PUTCH
- PUTCHAR
- PUTS
- QSORT
- RAND
- ROUND
- SETJMP
- SIN
- SLEEP
- SPRINTF
- SQRT
- SRAND
- STRCAT
- STRCHR, STRICHR
- STRCMP, STRICMP
- STRCPY
- STRCSPN
- STRLEN
- STRNCAT
- STRNCMP, STRNICMP
- STRNCPY
- STRPBRK
- STRRCHR, STRRICHR
- STRSPN
- STRSTR, STRISTR
- STRTOD
- STRTOL
- STRTOK
- TAN
- TIME
- TOLOWER, TOUPPER, TOASCII
- TRUNC
- UDIV
- ULDIV
- UTOA
- VA_START, VA_ARG, VA_END
- XTOI
 
- Appendix B. Embedded Compiler Compatibility Mode
- Appendix C. Error and Warning Messages- C.1 Introduction
- Messages 1-249- (1) too many errors (*) (all applications)
- (2) error/warning (*) generated, but no description available (all applications)
- (3) malformed error information on line *, in file * (all applications)
- (100) unterminated #if[n][def] block from line * (Preprocessor)
- (101) #* cannot follow #else (Preprocessor)
- (102) #* must be in an #if (Preprocessor)
- (103) #error: * (Preprocessor)
- (104) preprocessor #assert failure (Preprocessor)
- (105) no #asm before #endasm (Preprocessor)
- (106) nested #asm directives (Preprocessor)
- (107) illegal # directive "*" (Preprocessor, Parser)
- (108) #if[n][def] without an argument (Preprocessor)
- (109) #include syntax error (Preprocessor)
- (110) too many file arguments; usage: cpp [input [output]] (Preprocessor)
- (111) redefining preprocessor macro "*" (Preprocessor)
- (112) #define syntax error (Preprocessor)
- (113) unterminated string in preprocessor macro body (Preprocessor, Assembler)
- (114) illegal #undef argument (Preprocessor)
- (115) recursive preprocessor macro definition of "*" defined by "*" (Preprocessor)
- (116) end of file within preprocessor macro argument from line * (Preprocessor)
- (117) misplaced constant in #if (Preprocessor)
- (118) stack overflow processing #if expression (Preprocessor)
- (119) invalid expression in #if line (Preprocessor)
- (120) operator "*" in incorrect context (Preprocessor)
- (121) expression stack overflow at operator "*" (Preprocessor)
- (122) unbalanced parenthesis at operator "*" (Preprocessor)
- (123) misplaced "?" or ":"; previous operator is "*" (Preprocessor)
- (124) illegal character "*" in #if (Preprocessor)
- (125) illegal character (* decimal) in #if (Preprocessor)
- (126) strings can’t be used in #if (Preprocessor)
- (127) bad syntax for defined() in #[el]if (Preprocessor)
- (128) illegal operator in #if (Preprocessor)
- (129) unexpected "\" in #if (Preprocessor)
- (130) unknown type "*" in #[el]if sizeof() (Preprocessor)
- (131) illegal type combination in #[el]if sizeof() (Preprocessor)
- (132) no type specified in #[el]if sizeof() (Preprocessor)
- (133) unknown type code (0x*) in #[el]if sizeof() (Preprocessor)
- (134) syntax error in #[el]if sizeof() (Preprocessor)
- (135) unknown operator (*) in #if (Preprocessor)
- (137) strange character "*" after ## (Preprocessor)
- (138) strange character (*) after ## (Preprocessor)
- (139) end of file in comment (Preprocessor)
- (140) can’t open * file "*": * (Driver, Preprocessor, Code Generator, Assembler)
- (141) can’t open * file "*": * (Any)
- (144) too many nested #if blocks (Preprocessor)
- (146) #include filename too long (Preprocessor)
- (147) too many #include directories specified (Preprocessor)
- (148) too many arguments for preprocessor macro (Preprocessor)
- (149) preprocessor macro work area overflow (Preprocessor)
- (150) illegal "__" preprocessor macro "*" (Preprocessor)
- (151) too many arguments in preprocessor macro expansion (Preprocessor)
- (152) bad dp/nargs in openpar(): c = * (Preprocessor)
- (153) out of space in preprocessor macro * argument expansion (Preprocessor)
- (155) work buffer overflow concatenating "*" (Preprocessor)
- (156) work buffer "*" overflow (Preprocessor)
- (157) can’t allocate * bytes of memory (Code Generator, Assembler)
- (158) invalid disable in preprocessor macro "*" (Preprocessor)
- (159) too many calls to unget() (Preprocessor)
- (161) control line "*" within preprocessor macro expansion (Preprocessor)
- (162) #warning: * (Preprocessor, Driver)
- (163) unexpected text in control line ignored (Preprocessor)
- (164) #include filename "*" was converted to lower case (Preprocessor)
- (165) #include filename "*" does not match actual name (check upper/lower case) (Preprocessor)
- (166) too few values specified with option "*" (Preprocessor)
- (167) too many values specified with -S option; "*" unused Preprocessor)
- (168) unknown option "*" (Any)
- (169) strange character (*) after ## (Preprocessor)
- (170) symbol "*" in undef was never defined (Preprocessor)
- (171) wrong number of preprocessor macro arguments for "*" (* instead of *) (Preprocessor)
- (172) formal parameter expected after # (Preprocessor)
- (173) undefined symbol "*" in #if, 0 used (Preprocessor)
- (174) multi-byte constant "*" isn’t portable (Preprocessor)
- (175) division by zero in #if; zero result assumed (Preprocessor)
- (176) missing newline (Preprocessor)
- (177) symbol "*" in -U option was never defined (Preprocessor)
- (179) nested comments (Preprocessor)
- (180) unterminated comment in included file (Preprocessor)
- (181) non-scalar types can’t be converted to other types (Parser)
- (182) illegal conversion between types (Parser)
- (183) function or function pointer required (Parser)
- (184) calling an interrupt function is illegal (Parser)
- (185) function does not take arguments (Parser, Code Generator)
- (186) too many function arguments (Parser)
- (187) too few function arguments (Parser)
- (188) constant expression required (Parser)
- (189) illegal type for array dimension (Parser)
- (190) illegal type for index expression (Parser)
- (191) cast type must be scalar or void (Parser)
- (192) undefined identifier "*" (Parser)
- (193) not a variable identifier "*" (Parser)
- (194) ")" expected (Parser)
- (195) expression syntax (Parser)
- (196) struct/union required (Parser)
- (197) struct/union member expected (Parser)
- (198) undefined struct/union "*" (Parser)
- (199) logical type required (Parser)
- (200) taking the address of a register variable is illegal (Parser)
- (201) taking the address of this object is illegal (Parser)
- (202) only lvalues can be assigned to or modified (Parser)
- (203) illegal operation on bit variable (Parser)
- (204) void function can’t return a value (Parser)
- (205) integral type required (Parser)
- (206) illegal use of void expression (Parser)
- (207) simple type required for "*" (Parser)
- (208) operands of "*" not same type (Parser)
- (209) type conflict (Parser)
- (210) bad size list (Parser)
- (211) taking sizeof bit is illegal (Parser)
- (212) missing number after pragma "pack" (Parser)
- (214) missing number after pragma "interrupt_level" (Parser)
- (215) missing argument to pragma "switch" (Parser)
- (216) missing argument to pragma "psect" (Parser)
- (218) missing name after pragma "inline" (Parser)
- (219) missing name after pragma "printf_check" (Parser)
- (220) exponent expected (Parser)
- (221) hexadecimal digit expected (Parser)
- (222) binary digit expected (Parser)
- (223) digit out of range (Parser, Assembler)
- (224) illegal "#" directive (Parser)
- (225) missing character in character constant (Parser)
- (226) char const too long (Parser)
- (227) "." expected after ".." (Parser)
- (228) illegal character (*) (Parser)
- (229) unknown qualifier "*" given to -A (Parser)
- (230) missing argument to -A (Parser)
- (231) unknown qualifier "*" given to -I (Parser)
- (232) missing argument to -I (Parser)
- (233) bad -Q option "*" (Parser)
- (234) close error (Parser)
- (236) simple integer expression required (Parser)
- (237) function "*" redefined (Parser)
- (238) illegal initialization (Parser)
- (239) identifier "*" redefined (from line *) (Parser)
- (240) too many initializers (Parser)
- (241) initialization syntax (Parser)
- (242) illegal type for switch expression (Parser)
- (243) inappropriate break/continue (Parser)
- (244) "default" case redefined (Parser)
- (245) "default" case not in switch (Parser)
- (246) case label not in switch (Parser)
- (247) duplicate label "*" (Parser)
- (248) inappropriate "else" (Parser)
- (249) probable missing "}" in previous block (Parser)
 
- Messages 250-499- (251) array dimension redeclared (Parser)
- (252) argument * conflicts with prototype (Parser)
- (253) argument list conflicts with prototype (Parser)
- (254) undefined *: "*" (Parser)
- (255) not a member of the struct/union "*" (Parser)
- (256) too much indirection (Parser)
- (257) only "register" storage class allowed (Parser)
- (258) duplicate qualifier (Parser)
- (259) can’t be qualified both far and near (Parser)
- (260) undefined enum tag "*" (Parser)
- (261) struct/union member "*" redefined (Parser)
- (262) struct/union "*" redefined (Parser)
- (263) members can’t be functions (Parser)
- (264) bad bitfield type (Parser)
- (265) integer constant expected (Parser)
- (266) storage class illegal (Parser)
- (267) bad storage class (Code Generator)
- (268) inconsistent storage class (Parser)
- (269) inconsistent type (Parser)
- (270) variable can’t have storage class "register" (Parser)
- (271) type can’t be long (Parser)
- (272) type can’t be short (Parser)
- (273) type can’t be both signed and unsigned (Parser)
- (274) type can’t be unsigned (Parser)
- (275) "..." illegal in non-prototype argument list (Parser)
- (276) type specifier required for prototyped argument (Parser)
- (277) can’t mix prototyped and non-prototyped arguments (Parser)
- (278) argument "*" redeclared (Parser)
- (279) initialization of function arguments is illegal (Parser)
- (280) arrays of functions are illegal (Parser)
- (281) functions can’t return functions (Parser)
- (282) functions can’t return arrays (Parser)
- (283) dimension required (Parser)
- (284) invalid dimension (Parser)
- (285) no identifier in declaration (Parser)
- (286) declarator too complex (Parser)
- (287) arrays of bits or pointers to bit are illegal (Parser)
- (288) only functions can be void (Parser)
- (289) only functions can be qualified "interrupt" (Parser)
- (290) illegal function qualifier(s) (Parser)
- (291) K&R identifier "*" not an argument (Parser)
- (292) function parameter cannot be a function (Parser)
- (293) bad size in index_type() (Parser)
- (294) can’t allocate * bytes of memory (Code Generator, Hexmate)
- (295) expression too complex (Parser)
- (296) out of memory (Objtohex)
- (297) bad argument (*) to tysize() (Parser)
- (298) end of file in #asm (Preprocessor)
- (300) unexpected end of file (Parser)
- (301) end of file on string file (Parser)
- (302) can’t reopen "*": * (Parser)
- (303) can’t allocate * bytes of memory (line *) (Parser)
- (306) can’t allocate * bytes of memory for * (Code Generator)
- (307) too many qualifier names (Parser)
- (308) too many case labels in switch (Code Generator)
- (309) too many symbols (Assembler)
- (310) "]" expected (Parser)
- (311) closing quote expected (Parser)
- (312) "*" expected (Parser)
- (313) function body expected (Parser)
- (314) ";" expected (Parser)
- (315) "{" expected (Parser)
- (316) "}" expected (Parser)
- (317) "(" expected (Parser)
- (318) string expected (Parser)
- (319) while expected (Parser)
- (320) ":" expected (Parser)
- (321) label identifier expected (Parser)
- (322) enum tag or "{" expected (Parser)
- (323) struct/union tag or "{" expected (Parser)
- (324) too many arguments for printf-style format string (Parser)
- (325) error in printf-style format string (Parser)
- (326) long int argument required in printf-style format string (Parser)
- (327) long long int argument required in printf-style format string (Parser)
- (328) int argument required in printf-style format string (Parser)
- (329) double argument required in printf-style format string (Parser)
- (330) pointer to * argument required in printf-style format string (Parser)
- (331) too few arguments for printf-style format string (Parser)
- (332) "interrupt_level" should be 0 to 7 (Parser)
- (333) unrecognized qualifier name after "strings" (Parser)
- (334) unrecognized qualifier name after "printf_check" (Parser)
- (335) unknown pragma "*" (Parser)
- (336) string concatenation across lines (Parser)
- (337) line does not have a newline on the end (Parser)
- (338) can’t create * file "*" (Any)
- (339) initializer in extern declaration (Parser)
- (340) string not terminated by null character (Parser)
- (343) implicit return at end of non-void function (Parser)
- (344) non-void function returns no value (Parser)
- (345) unreachable code (Parser)
- (346) declaration of "*" hides outer declaration (Parser)
- (347) external declaration inside function (Parser)
- (348) auto variable "*" should not be qualified (Parser)
- (349) non-prototyped function declaration for "*" (Parser)
- (350) unused * "*" (from line *) (Parser)
- (352) float parameter coerced to double (Parser)
- (353) sizeof external array "*" is zero (Parser)
- (354) possible pointer truncation (Parser)
- (355) implicit signed to unsigned conversion (Parser)
- (356) implicit conversion of float to integer (Parser)
- (357) illegal conversion of integer to pointer (Parser)
- (358) illegal conversion of pointer to integer (Parser)
- (359) illegal conversion between pointer types (Parser)
- (360) array index out of bounds (Parser)
- (361) function declared implicit int (Parser)
- (362) redundant "&" applied to array (Parser)
- (363) redundant "&" or "*" applied to function address (Parser)
- (364) attempt to modify object qualified * (Parser)
- (365) pointer to non-static object returned (Parser)
- (366) operands of "*" not same pointer type (Parser)
- (367) identifier is already extern; can’t be static (Parser)
- (368) array dimension on "*[]" ignored (Preprocessor)
- (369) signed bitfields not supported (Parser)
- (370) illegal basic type; int assumed (Parser)
- (371) missing basic type; int assumed (Parser)
- (372) "," expected (Parser)
- (373) implicit signed to unsigned conversion (Parser)
- (374) missing basic type; int assumed (Parser)
- (375) unknown FNREC type "*" (Linker)
- (376) bad non-zero node in call graph (Linker)
- (378) can’t create * file "*" (Hexmate)
- (379) bad record type "*" (Linker)
- (380) unknown record type (*) (Linker)
- (381) record "*" too long (*) (Linker)
- (382) incomplete record: type = *, length = * (Dump, Xstrip)
- (383) text record has length (*) too small (Linker)
- (384) assertion failed: file *, line *, expression * (Linker, Parser)
- (387) illegal or too many -G options (Linker)
- (388) duplicate -M option (Linker)
- (389) illegal or too many -O options (Linker)
- (390) missing argument to -P (Linker)
- (391) missing argument to -Q (Linker)
- (392) missing argument to -U (Linker)
- (393) missing argument to -W (Linker)
- (394) duplicate -D or -H option (Linker)
- (395) missing argument to -J (Linker)
- (397) usage: hlink [-options] files.obj files.lib (Linker)
- (398) output file can’t be also an input file (Linker)
- (400) bad object code format (Linker)
- (402) bad argument to -F (Objtohex)
- (403) bad -E option: "*" (Objtohex)
- (404) bad maximum length value to -<digits> (Objtohex)
- (405) bad record size rounding value to -<digits> (Objtohex)
- (406) bad argument to -A (Objtohex)
- (407) bad argument to -U (Objtohex)
- (408) bad argument to -B (Objtohex)
- (409) bad argument to -P (Objtohex)
- (410) bad combination of options (Objtohex)
- (412) text does not start at 0 (Objtohex)
- (413) write error on "*" (Assembler, Linker, Cromwell)
- (414) read error on "*" (Linker)
- (415) text offset too low in COFF file (Objtohex)
- (416) bad character (*) in extended TEKHEX line (Objtohex)
- (417) seek error in "*" (Linker)
- (418) image too big (Objtohex)
- (419) object file is not absolute (Objtohex)
- (420) too many relocation items (Objtohex)
- (421) too many segments (Objtohex)
- (422) no end record (Linker)
- (423) illegal record type (Linker)
- (424) record too long (Objtohex)
- (425) incomplete record (Objtohex, Libr)
- (427) syntax error in checksum list (Objtohex)
- (428) too many segment fixups (Objtohex)
- (429) bad segment fixups (Objtohex)
- (430) bad checksum specification (Objtohex)
- (431) bad argument to -E (Objtoexe)
- (432) usage: objtohex [-ssymfile] [object-file [exe-file]] (Objtohex)
- (434) too many symbols (*) (Linker)
- (435) bad segment selector "*" (Linker)
- (436) psect "*" re-orged (Linker)
- (437) missing "=" in class spec (Linker)
- (438) bad size in -S option (Linker)
- (439) bad -D spec: "*" (Linker)
- (440) bad delta value in -D spec (Linker)
- (441) bad -A spec: "*" (Linker)
- (442) missing address in -A spec (Linker)
- (443) bad low address "*" in -A spec (Linker)
- (444) expected "-" in -A spec (Linker)
- (445) bad high address "*" in -A spec (Linker)
- (446) bad overrun address "*" in -A spec (Linker)
- (447) bad load address "*" in -A spec (Linker)
- (448) bad repeat count "*" in -A spec (Linker)
- (449) syntax error in -A spec: * (Linker)
- (450) psect "*" was never defined (Linker)
- (451) bad psect origin format in -P option (Linker)
- (452) bad "+" (minimum address) format in -P option (Linker)
- (453) missing number after "%" in -P option (Linker)
- (454) link and load address can’t both be set to "." in -P option (Linker)
- (455) psect "*" not relocated on 0x* byte boundary (Linker)
- (456) psect "*" not loaded on 0x* boundary (Linker)
- (459) remove failed, error: *, * (xstrip)
- (460) rename failed, error: *, * (xstrip)
- (461) can’t create * file "*" (Assembler, Code Generator)
- (464) missing key in avmap file (Linker)
- (465) undefined symbol "*" in FNBREAK record (Linker)
- (466) undefined symbol "*" in FNINDIR record (Linker)
- (467) undefined symbol "*" in FNADDR record (Linker)
- (468) undefined symbol "*" in FNCALL record (Linker)
- (469) undefined symbol "*" in FNROOT record (Linker)
- (470) undefined symbol "*" in FNSIZE record (Linker)
- (471) recursive function calls: (Linker)
- (472) non-reentrant function "*" appears in multiple call graphs: rooted at "*" and "*" (Linker)
- (473) function "*" is not called from specified interrupt_level (Linker)
- (474) no psect specified for function variable/argument allocation (Linker)
- (475) conflicting FNCONF records (Linker)
- (476) fixup overflow referencing * * (location 0x* (0x*+*), size *, value 0x*) (Linker)
- (477) fixup overflow in expression (location 0x* (0x*+*), size *, value 0x*) (Linker)
- (478) * range check failed (location 0x* (0x*+*), value 0x* > limit 0x*) (Linker)
- (479) circular indirect definition of symbol "*" (Linker)
- (480) function signatures do not match: * (*): 0x*/0x* (Linker)
- (481) common symbol "*" psect conflict (Linker)
- (482) symbol "*" is defined more than once in "*" (Assembler)
- (483) symbol "*" can’t be global (Linker)
- (484) psect "*" can’t be in classes "*" and "*" (Linker)
- (485) unknown "with" psect referenced by psect "*" (Linker)
- (486) psect "*" selector value redefined (Linker)
- (487) psect "*" type redefined: */* (Linker)
- (488) psect "*" memory space redefined: */* (Linker)
- (489) psect "*" memory delta redefined: */* (Linker)
- (490) class "*" memory space redefined: */* (Linker)
- (491) can’t find 0x* words for psect "*" in segment "*" (Linker)
- (492) attempt to position absolute psect "*" is illegal (Linker)
- (493) origin of psect "*" is defined more than once (Linker)
- (494) bad -P format "*/*" (Linker)
- (495) use of both "with=" and "INCLASS/INCLASS" allocation is illegal (Linker)
- (497) psect "*" exceeds max size: *h > *h (Linker)
- (498) psect "*" exceeds address limit: *h > *h (Linker)
- (499) undefined symbol: (Assembler, Linker)
 
- Messages 500-749- (500) undefined symbols: (Linker)
- (501) program entry point is defined more than once (Linker)
- (502) incomplete * record body: length = * (Linker)
- (503) ident records do not match (Linker)
- (504) object code version is greater than *.* (Linker)
- (505) no end record found inobject file (Linker)
- (506) object file record too long: *+* (Linker)
- (507) unexpected end of file in object file (Linker)
- (508) relocation offset (*) out of range 0..*-*-1 (Linker)
- (509) illegal relocation size: * (Linker)
- (510) complex relocation not supported for -R or -L options (Linker)
- (511) bad complex range check (Linker)
- (512) unknown complex operator 0x* (Linker)
- (513) bad complex relocation (Linker)
- (514) illegal relocation type: * (Linker)
- (515) unknown symbol type * (Linker)
- (516) text record has bad length: *-*-(*+1) < 0 (Linker)
- (520) function "*" is never called (Linker)
- (521) call depth exceeded by function "*" (Linker)
- (522) library "*" is badly ordered (Linker)
- (523) argument to -W option (*) illegal and ignored (Linker)
- (524) unable to open list file "*": * (Linker)
- (525) too many address (memory) spaces; space (*) ignored (Linker)
- (526) psect "*" not specified in -P option (first appears in "*") (Linker)
- (528) no start record; entry point defaults to zero (Linker)
- (529) usage: objtohex [-Ssymfile] [object-file [HEX-file]] (Objtohex)
- (593) can’t find 0x* words (0x* withtotal) for psect "*" in segment "*" (Linker)
- (594) undefined symbol: (Linker)
- (595) undefined symbols: (Linker)
- (596) segment "*" (*-*) overlaps segment "*" (*-*) (Linker)
- (599) No psect classes given for COFF write (Cromwell)
- (600) No chip arch given for COFF write (Cromwell)
- (601) Unknown chip arch "*" for COFF write (Cromwell)
- (602) null file format name (Cromwell)
- (603) ambiguous file format name "*" (Cromwell)
- (604) unknown file format name "*" (Cromwell)
- (605) did not recognize format of input file (Cromwell)
- (606) inconsistent symbol tables (Cromwell)
- (607) inconsistent line number tables (Cromwell)
- (608) bad path specification (Cromwell)
- (609) missing device spec after -P (Cromwell)
- (610) missing psect classes after -N (Cromwell)
- (611) too many input files (Cromwell)
- (612) too many output files (Cromwell)
- (613) no output file format specified (Cromwell)
- (614) no input files specified (Cromwell)
- (616) option -Cbaseaddr is illegal with options -R or -L (Linker)
- (618) error reading COD file data (Cromwell)
- (619) I/O error reading symbol table (Cromwell)
- (620) filename index out of range in line number record (Cromwell)
- (621) error writing ELF/DWARF section "*" on "*" (Cromwell)
- (622) too many type entries (Cromwell)
- (623) bad class in type hashing (Cromwell)
- (624) bad class in type compare (Cromwell)
- (625) too many files in COFF file (Cromwell)
- (626) string lookup failed in COFF: get_string() (Cromwell)
- (627) missing "*" in SDB file "*" line * column * (Cromwell)
- (629) bad storage class "*" in SDB file "*" line * column * (Cromwell)
- (630) invalid syntax for prefix list in SDB file "*" (Cromwell)
- (631) syntax error at token "*" in SDB file "*" line * column * (Cromwell)
- (632) can’t handle address size (*) (Cromwell)
- (633) unknown symbol class (*) (Cromwell)
- (634) error dumping "*" (Cromwell)
- (635) invalid HEX file "*" on line * (Cromwell)
- (636) checksum error in Intel HEX file "*" on line * (Cromwell, Hexmate)
- (637) unknown prefix "*" in SDB file "*" (Cromwell)
- (638) version mismatch: 0x* expected (Cromwell)
- (639) zero bit width in Microchip optional header (Cromwell)
- (668) prefix list did not match any SDB types (Cromwell)
- (669) prefix list matched more than one SDB type (Cromwell)
- (670) bad argument to -T (Clist)
- (671) argument to -T should be in range 1 to 64 (Clist)
- (673) missing filename after * option (Objtohex)
- (674) too many references to "*" (Cref)
- (677) set_fact_bit on pic17! (Code Generator)
- (678) case 55 on pic17! (Code Generator)
- (679) unknown extraspecial: * (Code Generator)
- (680) bad format for -P option (Code Generator)
- (681) bad common spec in -P option (Code Generator)
- (682) this architecture is not supported by the PICC™ Lite compiler (Code Generator)
- (683) bank 1 variables are not supported by the PICC Lite compiler (Code Generator)
- (684) bank 2 and 3 variables are not supported by the PICC Lite compiler (Code Generator)
- (685) bad putwsize() (Code Generator)
- (686) bad switch size (*) (Code Generator)
- (687) bad pushreg "*" (Code Generator)
- (688) bad popreg "*" (Code Generator)
- (689) unknown predicate "*" (Code Generator)
- (690) interrupt function requires address (Code Generator)
- (691) interrupt functions not implemented for 12 bit PIC MCU (Code Generator)
- (692) interrupt function "*" can only have one interrupt level (Code Generator)
- (693) interrupt level can only be 0 (default) or 1 (Code Generator)
- (694) no interrupt strategy available (Code Generator)
- (695) duplicate case label (*) (Code Generator)
- (696) out-of-range case label (*) (Code Generator)
- (697) non-constant case label (Code Generator)
- (698) bit variables must be global or static (Code Generator)
- (699) no case labels in switch (Code Generator)
- (700) truncation of enumerated value (Code Generator)
- (701) unreasonable matching depth (Code Generator)
- (702) regused(): bad arg to G (Code Generator)
- (703) bad GN (Code Generator)
- (704) bad RET_MASK (Code Generator)
- (705) bad which (*) after I (Code Generator)
- (706) bad which in expand() (Code Generator)
- (707) bad SX (Code Generator)
- (708) bad mod "+" for how = "*" (Code Generator)
- (709) metaregister "*" can’t be used directly (Code Generator)
- (710) bad U usage (Code Generator)
- (711) bad how in expand() (Code Generator)
- (712) can’t generate code for this expression (Code Generator)
- (713) bad initialization list (Code Generator)
- (714) bad intermediate code (Code Generator)
- (715) bad pragma "*" (Code Generator)
- (716) bad argument to -M option "*" (Code Generator)
- (718) incompatible intermediate code version; should be *.* (Code Generator)
- (720) multiple free: * (Code Generator)
- (721) element count must be constant expression (Code Generator)
- (722) bad variable syntax in intermediate code (Code Generator)
- (723) function definitions nested too deep (Code Generator)
- (724) bad op (*) in revlog() (Code Generator)
- (726) bad op "*" in uconval() (Code Generator)
- (727) bad op "*" in bconfloat() (Code Generator)
- (728) bad op "*" in confloat() (Code Generator)
- (729) bad op "*" in conval() (Code Generator)
- (730) bad op "*" ( Code Generator)
- (731) expression error with reserved word (Code Generator)
- (732) initialization of bit types is illegal (Code Generator)
- (733) bad string "*" in pragma "psect" (Code Generator)
- (734) too many "psect" pragmas (Code Generator)
- (735) bad string "*" in pragma "stack_size" (Code Generator)
- (737) unknown argument "*" to pragma "switch" (Code Generator)
- (739) error closing output file (Code Generator)
- (740) zero dimension array is illegal (Code Generator)
- (741) bitfield too large (* bits) (Code Generator)
- (742) function "*" argument evaluation overlapped (Linker)
- (743) divide by zero (Code Generator)
- (744) static object "*" has zero size (Code Generator)
- (745) nodecount = * (Code Generator)
- (746) object "*" qualified const, but not initialized (Code Generator)
- (747) unrecognized option "*" to -Z (Code Generator)
- (748) variable "*" can be used before set (Code Generator)
- (749) unknown register name "*" used with pragma (Linker)
 
- Messages 750-999- (750) constant operand to || or && (Code Generator)
- (751) arithmetic overflow in constant expression (Code Generator)
- (752) conversion to shorter data type (Code Generator)
- (753) undefined shift (* bits) (Code Generator)
- (754) bitfield comparison out of range (Code Generator)
- (755) divide by zero (Code Generator)
- (757) constant conditional branch (Code Generator)
- (758) constant conditional branch: possible use of "=" instead of "==" (Code Generator)
- (759) expression generates no code (Code Generator)
- (760) portion of expression has no effect (Code Generator)
- (761) sizeof yields 0 (Code Generator)
- (762) constant truncated when assigned to bitfield (Code Generator)
- (763) constant left operand to "? :" operator (Code Generator)
- (764) mismatched comparison (Code Generator)
- (765) degenerate unsigned comparison (Code Generator)
- (766) degenerate signed comparison (Code Generator)
- (767) constant truncated to bitfield width (Code Generator)
- (768) constant relational expression (Code Generator)
- (769) no space for macro definition (Assembler)
- (772) include files nested too deep (Assembler)
- (773) macro expansions nested too deep (Assembler)
- (774) too many macro parameters (Assembler)
- (776) can’t allocate space for object "*" (offs: *) (Assembler)
- (777) can’t allocate space for opnd structure within object "*", (offs: *) (Assembler)
- (780) too many psects defined (Assembler)
- (781) can’t enter abs psect (Assembler)
- (782) REMSYM error (Assembler)
- (783) "with" psects are cyclic (Assembler)
- (784) overfreed (Assembler)
- (785) too many temporary labels (Assembler)
- (787) can’t handle "v_rtype" of * in copyexpr (Assembler)
- (788) invalid character "*" in number (Assembler)
- (790) end of file inside conditional (Assembler)
- (793) unterminated macro argument (Assembler)
- (794) invalid number syntax (Assembler)
- (796) use of LOCAL outside macros is illegal (Assembler)
- (797) syntax error in LOCAL argument (Assembler)
- (798) macro argument cannot appear after LOCAL (Assembler)
- (799) REPT argument must be >= 0 (Assembler)
- (800) undefined symbol "*" (Assembler)
- (801) range check too complex (Assembler)
- (802) invalid address after END directive (Assembler)
- (803) undefined temporary label (Assembler)
- (804) write error on object file (Assembler)
- (806) attempted to get an undefined object (*) (Assembler)
- (807) attempted to set an undefined object (*) (Assembler)
- (808) bad size in add_reloc() (Assembler)
- (809) unknown addressing mode (*) (Assembler)
- (811) "cnt" too large (*) in display() (Assembler)
- (814) device type not defined (Assembler)
- (815) syntax error in chipinfo file at line * (Assembler)
- (816) duplicate ARCH specification in chipinfo file "*" at line * (Assembler, Driver)
- (817) unknown architecture in chipinfo file at line * (Assembler, Driver)
- (818) duplicate BANKS for "*" in chipinfo file at line * (Assembler)
- (819) duplicate ZEROREG for "*" in chipinfo file at line * (Assembler)
- (820) duplicate SPAREBIT for "*" in chipinfo file at line * (Assembler)
- (821) duplicate INTSAVE for "*" in chipinfo file at line * (Assembler)
- (822) duplicate ROMSIZE for "*" in chipinfo file at line * (Assembler)
- (823) duplicate START for "*" in chipinfo file at line * (Assembler)
- (824) duplicate LIB for "*" in chipinfo file at line * (Assembler)
- (825) too many RAMBANK lines in chipinfo file for "*" (Assembler)
- (826) inverted ram bank in chipinfo file at line * (Assembler, Driver)
- (827) too many COMMON lines in chipinfo file for "*" (Assembler)
- (828) inverted common bank in chipinfo file at line * (Assembler, Driver)
- (829) unrecognized line in chipinfo file at line * (Assembler)
- (830) missing ARCH specification for "*" in chipinfo file (Assembler)
- (832) empty chip info file "*" (Assembler)
- (833) no valid entries in chipinfo file (Assembler)
- (834) page width must be >= 60 (Assembler)
- (835) form length must be >= 15 (Assembler)
- (836) no file arguments (Assembler)
- (839) relocation too complex (Assembler)
- (840) phase error (Assembler)
- (841) bad source/destination for movfp/movpf instruction (Assembler)
- (842) bad bit number (Assembler)
- (843) a macro name can’t also be an EQU/SET symbol (Assembler)
- (844) lexical error (Assembler)
- (845) symbol "*" defined more than once (Assembler)
- (846) relocation error (Assembler)
- (847) operand error (Assembler)
- (848) symbol has been declared EXTERN (Assembler)
- (849) illegal instruction for this device (Assembler)
- (850) PAGESEL not usable with this device (Assembler)
- (851) illegal destination (Assembler)
- (852) radix must be from 2 - 16 (Assembler)
- (853) invalid size for FNSIZE directive (Assembler)
- (855) ORG argument must be a positive constant (Assembler)
- (856) ALIGN argument must be a positive constant (Assembler)
- (857) psect cannot be local and global (Linker)
- (859) argument to C option must specify a positive constant (Assembler)
- (860) page width must be >= 49 (Assembler)
- (861) argument to N option must specify a positive constant (Assembler)
- (862) symbol is not external (Assembler)
- (863) symbol can’t be both extern and public (Assembler)
- (864) argument to "size" psect flag must specify a positive constant (Assembler)
- (865) psect flag "size" redefined (Assembler)
- (866) argument to "reloc" psect flag must specify a positive constant (Assembler)
- (867) psect flag "reloc" redefined (Assembler)
- (868) argument to "delta" psect flag must specify a positive constant (Assembler)
- (869) psect flag "delta" redefined (Assembler)
- (870) argument to "pad" psect flag must specify a positive constant (Assembler)
- (871) argument to "space" psect flag must specify a positive constant (Assembler)
- (872) psect flag "space" redefined (Assembler)
- (873) a psect can only be in one class (Assembler)
- (874) a psect can only have one "with" option (Assembler)
- (875) bad character constant in expression (Assembler)
- (876) syntax error (Assembler)
- (877) yacc stack overflow (Assembler)
- (878) -S option used: "*" ignored (Driver)
- (880) invalid number of parameters. Use "* –HELP" for help (Driver)
- (881) setup succeeded (Driver)
- (883) setup failed (Driver)
- (884) please ensure you have write permissions to the configuration file (Driver)
- (889) this * compiler has expired (Driver)
- (890) contact Microchip to purchase and re-activate this compiler (Driver)
- (891) can’t open psect usage map file "*": * (Driver)
- (892) can’t open memory usage map file "*": * (Driver)
- (893) can’t open HEX usage map file "*": * (Driver)
- (894) unknown source file type "*" (Driver)
- (895) can’t request and specify options in the one command (Driver)
- (896) no memory ranges specified for data space (Driver)
- (897) no memory ranges specified for program space (Driver)
- (899) can’t open option file "*" for application "*": * (Driver)
- (900) exec failed: * (Driver)
- (902) no chip name specified; use "* –CHIPINFO" to see available chip names (Driver)
- (904) illegal format specified in "*" option (Driver)
- (905) illegal application specified in "*" option (Driver)
- (907) unknown memory space tag "*" in "*" option specification (Driver)
- (908) exit status = * (Driver)
- (913) "*" option can cause compiler errors in some standard header files (Driver)
- (915) no room for arguments (Preprocessor, Parser, Code Generator, Linker, Objtohex)
- (917) argument too long (Preprocessor, Parser)
- (918) *: no match (Preprocessor, Parser)
- (919) * in chipinfo file "*" at line * (Driver)
- (920) empty chipinfo file (Driver, Assembler)
- (922) chip "*" not present in chipinfo file "*" (Driver)
- (923) unknown suboption "*" (Driver)
- (924) missing argument to "*" option (Driver)
- (925) extraneous argument to "*" option (Driver)
- (926) duplicate "*" option (Driver)
- (928) bad "*" option value (Driver, Assembler)
- (929) bad "*" option ranges (Driver)
- (930) bad "*" option specification (Driver)
- (931) command file not specified (Driver)
- (939) no file arguments (Driver)
- (940) *-bit checksum * placed at * (Objtohex)
- (941) bad "*" assignment; USAGE: ** (Hexmate)
- (942) unexpected character on line * of file "*" (Hexmate)
- (944) data conflict at address *h between * and * (Hexmate)
- (945) checksum range (*h to *h) contained an indeterminate value (Hexmate)
- (948) checksum result width must be between 1 and 4 bytes (Hexmate)
- (949) start of checksum range must be less than end of range (Hexmate)
- (951) start of fill range must be less than end of range (Hexmate)
- (953) unknown -HELP sub-option: * (Hexmate)
- (956) -SERIAL value must be between 1 and * bytes long (Hexmate)
- (958) too many input files specified; * file maximum (Hexmate)
- (960) unexpected record type (*) on line * of "*" (Hexmate)
- (962) forced data conflict at address *h between * and * (Hexmate)
- (963) checksum range includes voids or unspecified memory locations (Hexmate)
- (964) unpaired nibble in -FILL value will be truncated (Hexmate)
- (965) -STRPACK option not yet implemented, option will be ignored (Hexmate)
- (966) no END record for HEX file "*" (Hexmate)
- (967) unused function definition "*" (from line *) (Parser)
- (968) unterminated string (Assembler)
- (969) end of string in format specifier (Parser)
- (970) character not valid at this point in format specifier (Parser)
- (971) type modifiers not valid with this format (Parser)
- (972) only modifiers "h" and "l" valid with this format (Parser)
- (973) only modifier "l" valid with this format (Parser)
- (974) type modifier already specified (Parser)
- (975) invalid format specifier or type modifier (Parser)
- (976) field width not valid at this point (Parser)
- (978) this identifier is already an enum tag (Parser)
- (979) this identifier is already a struct tag (Parser)
- (980) this identifier is already a union tag (Parser)
- (981) pointer required (Parser)
- (982) unknown op "*" in nxtuse() (Assembler)
- (983) storage class redeclared (Parser)
- (984) type redeclared (Parser)
- (985) qualifiers redeclared (Parser)
- (986) enum member redeclared (Parser)
- (987) arguments redeclared (Parser)
- (988) number of arguments redeclared (Parser)
- (989) module has code below file base of *h (Linker)
- (990) modulus by zero in #if; zero result assumed (Preprocessor)
- (991) integer expression required (Parser)
- (992) can’t find op (Assembler)
- (993) some command-line options are disabled (Driver)
- (994) some command-line options are disabled and compilation is delayed (Driver)
- (995) some command-line options are disabled, code size is limited to 16kB, compilation is delayed (Driver)
 
- Messages 1000-1249- (1015) missing "*" specification in chipinfo file "*" at line * (Driver)
- (1016) missing argument* to "*" specification in chipinfo file "*" at line * (Driver)
- (1017) extraneous argument* to "*" specification in chipinfo file "*" at line * (Driver)
- (1018) illegal number of "*" specification* (* found; * expected) in chipinfo file "*" at line * (Driver)
- (1019) duplicate "*" specification in chipinfo file "*" at line * (Driver)
- (1020) unknown attribute "*" in chipinfo file "*" at line * (Driver)
- (1021) syntax error reading "*" value in chipinfo file "*" at line * (Driver)
- (1022) syntax error reading "*" range in chipinfo file "*" at line * (Driver)
- (1024) syntax error in chipinfo file "*" at line * (Driver)
- (1025) unknown architecture in chipinfo file "*" at line * (Driver)
- (1026) missing architecture in chipinfo file "*" at line * (Assembler)
- (1027) activation was successful (Driver)
- (1028) activation was not successful - error code (*) (Driver)
- (1029) compiler not installed correctly - error code (*) (Driver)
- (1030) Hexmate - Intel HEX editing utility (Build 1.%i) (Hexmate)
- (1031) USAGE: * [input1.HEX] [input2.HEX]... [inputN.HEX] [options] (Hexmate)
- (1032) use –HELP=<option> for usage of these command line options (Hexmate)
- (1033) available command-line options: (Hexmate)
- (1034) type "*" for available options (Hexmate)
- (1035) bad argument count (*) (Parser)
- (1036) bad "*" optional header length (0x* expected) (Cromwell)
- (1037) short read on * (Cromwell)
- (1038) string table length too short (Cromwell)
- (1039) inconsistent symbol count (Cromwell)
- (1040) bad checksum: record 0x*, checksum 0x* (Cromwell)
- (1041) short record (Cromwell)
- (1042) unknown * record type 0x* (Cromwell)
- (1043) unknown optional header (Cromwell)
- (1044) end of file encountered (Cromwell, Linker)
- (1045) short read on block of * bytes (Cromwell)
- (1046) short string read (Cromwell)
- (1047) bad type byte for UBROF file (Cromwell)
- (1048) bad time/date stamp (Cromwell)
- (1049) wrong CRC on 0x* bytes; should be * (Cromwell)
- (1050) bad date in 0x52 record (Cromwell)
- (1051) bad date in 0x01 record (Cromwell)
- (1052) unknown record type (Cromwell)
- (1053) additional RAM ranges larger than bank size (Driver)
- (1054) additional RAM range out of bounds (Driver)
- (1055) RAM range out of bounds (*) (Driver)
- (1056) unknown chip architecture (Driver)
- (1057) fast double option only available on 17 series processors (Driver)
- (1058) assertion (Code Generator)
- (1059) rewrite loop (Code Generator)
- (1081) static initialization of persistent variable "*" (Parser, Code Generator)
- (1082) size of initialized array element is zero (Code Generator)
- (1088) function pointer "*" is used but never assigned a value (Code Generator)
- (1089) recursive function call to "*" (Code Generator)
- (1090) variable "*" is not used (Code Generator)
- (1091) main function "*" not defined (Code Generator)
- (1094) bad derived type (Code Generator)
- (1095) bad call to typeSub() (Code Generator)
- (1096) type should be unqualified (Code Generator)
- (1097) unknown type string "*" (Code Generator)
- (1098) conflicting declarations for variable "*" (*:*) (Parser, Code Generator)
- (1104) unqualified error (Code Generator)
- (1118) bad string "*" in getexpr(J) (Code Generator)
- (1119) bad string "*" in getexpr(LRN) (Code Generator)
- (1121) expression error (Code Generator)
- (1137) match() error: * (Code Generator)
- (1157) W register must be W9 (Assembler)
- (1159) W register must be W11 (Assembler)
- (1178) the "*" option has been removed and has no effect (Driver)
- (1179) interrupt level for function "*" cannot exceed * (Code Generator)
- (1180) directory "*" does not exist (Driver)
- (1182) near variables must be global or static (Code Generator)
- (1183) invalid version number (Activation)
- (1184) activation limit reached (Activation)
- (1185) invalid serial number (Activation)
- (1186) license has expired (Driver)
- (1187) invalid activation request ( Driver)
- (1188) network error * (Activation)
- (1190) FAE license only - not for use in commercial applications (Driver)
- (1191) licensed for educational use only (Driver)
- (1192) licensed for evaluation purposes only (Driver)
- (1193) this license will expire on * (Driver)
- (1195) invalid syntax for "*" option (Driver)
- (1198) too many "*" specifications; * maximum (Hexmate)
- (1199) compiler has not been activated (Driver)
- (1200) Found %0*lXh at address *h (Hexmate)
- (1201) all FIND/REPLACE code specifications must be of equal width (Hexmate)
- (1202) unknown format requested in -FORMAT: * (Hexmate)
- (1203) unpaired nibble in * value will be truncated (Hexmate)
- (1204) * value must be between 1 and * bytes long (Hexmate)
- (1205) using the configuration file *; you can override this with the environment variable HTC_XML (Driver)
- (1207) some of the command line options you are using are now obsolete (Driver)
- (1208) use –help option or refer to the user manual for option details (Driver)
- (1209) An old MPLAB tool suite plug-in was detected. (Driver)
- (1210) Visit the Microchip website (www.microchip.com) for a possible upgrade (Driver)
- (1212) Found * (%0*lXh) at address *h (Hexmate)
- (1213) duplicate ARCH for * in chipinfo file at line * (Assembler, Driver)
- (1218) can’t create cross reference file * (Assembler)
- (1228) unable to locate installation directory (Driver)
- (1230) dereferencing uninitialized pointer "*" (Code Generator)
- (1235) unknown keyword * (Driver)
- (1236) invalid argument to *: * (Driver)
- (1237) endpoint 0 is pre-defined (Driver)
- (1238) FNALIGN failure on * ( Linker)
- (1239) pointer * has no valid targets (Code Generator)
- (1240) unknown checksum algorithm type (%i) (Driver)
- (1241) bad start address in * (Driver)
- (1242) bad end address in * (Driver)
- (1243) bad destination address in * (Driver)
- (1245) value greater than zero required for * (Hexmate)
- (1246) no RAM defined for variable placement (Code Generator)
- (1247) no access RAM defined for variable placement (Code Generator)
- (1248) symbol (*) encountered with undefined type size (Code Generator)
 
- Messages 1250-1499- (1250) could not find space (* byte*) for variable * (Code Generator)
- (1253) could not find space (* byte*) for auto/param block (Code Generator)
- (1254) could not find space (* byte*) for data block (Code Generator)
- (1255) conflicting paths for output directory (Driver)
- (1256) undefined symbol "*" treated as HEX constant (Assembler)
- (1257) local variable "*" is used but never given a value (Code Generator)
- (1258) possible stack overflow when calling function "*" (Code Generator)
- (1259) can’t optimize for both speed and space (Driver)
- (1260) macro "*" redefined (Assembler)
- (1261) string constant required (Assembler)
- (1262) object "*" lies outside available * space (Code Generator)
- (1264) unsafe pointer conversion (Code Generator)
- (1267) fixup overflow referencing * into * bytes at 0x* (Linker)
- (1268) fixup overflow storing 0x* in * bytes at * (Linker)
- See error message 477 for more information.
- (1273) Omniscient Code Generation not available in Free mode (Driver)
- (1275) only functions can be qualified "*" (Parser)
- (1276) buffer overflow in DWARF location list (Cromwell)
- (1278) omitting "*" which does not have a location (Cromwell)
- (1284) malformed mapfile while generating summary: CLASS expected but not found (Driver)
- (1285) malformed mapfile while generating summary: no name at position * (Driver)
- (1286) malformed mapfile while generating summary: no link address at position * ( Driver)
- (1287) malformed mapfile while generating summary: no load address at position * (Driver)
- (1288) malformed mapfile while generating summary: no length at position * (Driver)
- (1289) line range limit exceeded, debugging can be affected (Cromwell)
- (1290) buffer overflow in DWARF debugging information entry (Cromwell)
- (1291) bad ELF string table index (Cromwell)
- (1292) malformed define in .SDB file * (Cromwell)
- (1293) couldn’t find type for "*" in DWARF debugging information entry (Cromwell)
- (1294) there is only one day left until this license expires (Driver)
- (1295) there are * days left until this license will expire (Driver)
- (1296) source file "*" conflicts with "*" (Driver)
- (1297) option * not available in Free mode (Driver)
- (1298) use of * outside macros is illegal (Assembler)
- (1299) non-standard modifier "*" - use "*" instead (Parser)
- (1300) maximum number of program classes reached. List can be truncated (Cromwell)
- (1301) invalid ELF section header. Skipping (Cromwell)
- (1302) could not find valid ELF output extension for this device (Cromwell)
- (1303) invalid variable location detected: * - * (Cromwell)
- (1304) unknown register name: "*" (Cromwell)
- (1305) inconsistent storage class for variable: "*" (Cromwell)
- (1306) inconsistent size (* vs *) for variable: "*" (Cromwell)
- (1307) psect * truncated to * bytes (Driver)
- (1308) missing/conflicting interrupts sub-option, defaulting to "*" (Driver)
- (1309) ignoring invalid runtime * sub-option (*) using default (Driver)
- (1310) specified speed (*Hz) exceeds max operating frequency (*Hz), defaulting to *Hz (Driver)
- (1311) missing configuration setting for config word *, using default (Driver)
- (1312) conflicting runtime perform sub-option and configuration word settings, assuming *Hz (Driver)
- (1313) * sub-options ("*") ignored (Driver)
- (1314) illegal action in memory allocation (Code Generator)
- (1315) undefined or empty class used to link psect * (Linker)
- (1316) attribute "*" ignored (Parser)
- (1317) missing argument to attribute "*" (Parser)
- (1318) invalid argument to attribute "*" (Parser)
- (1319) invalid type "*" for attribute "*" (Parser)
- (1320) attribute "*" already exists (Parser)
- (1321) bad attribute -T option "%s" (Parser)
- (1322) unknown qualifier "%s" given to -T (Parser)
- (1323) attribute expected (Parser)
- (1324) qualifier "*" ignored (Parser)
- (1325) no such CP* register: ($*), select (*) (Code Generator)
- (1326) "*" qualified variable (*) missing address (Code Generator)
- (1327) interrupt function "*" redefined by "*" (Code Generator)
- (1328) coprocessor * registers can’t be accessed from * code (Code Generator)
- (1329) can only modify RAM type interrupt vectors (Code Generator)
- (1330) only functions or function pointers can have an instruction set architecture qualifier (Code Generator)
- (1331) interrupt functions cannot be qualified "*" (Code Generator)
- (1332) invalid qualifier (*) and type combination on "*" (Code Generator)
- (1333) can’t extend instruction (Assembler)
- (1334) invalid * register operand (Assembler)
- (1335) instruction "*" is deprecated (Assembler)
- (1336) a psect can belong to only one ISA (Assembler)
- (1337) instruction/macro "*" is not part of psect ISA (Assembler)
- (1338) operand must be a * bit value (Assembler)
- (1339) operand must be a * bit * value (Assembler)
- (1340) operand must be >= * and <= * (Assembler)
- (1341) pos+size must be > 0 and <= 32 (Assembler)
- (1342) whitespace after "\" (Preprocessor)
- (1343) hexfile data at address 0x* (0x*) overwritten with 0x* (Objtohex)
- (1346) can’t find 0x* words for psect "*" in segment "*" (largest unused contiguous range 0x%lX) (Linker)
- (1347) can’t find 0x* words (0x* withtotal) for psect "*" in segment "*" (largest unused contiguous range 0x%lX) (Linker)
- (1348) enum tag "*" redefined (from *:*) (Parser)
- (1350) pointer operands to "-" must reference the same array (Code Generator)
- (1352) truncation of operand value (0x*) to * bits (Assembler)
- (1354) ignoring configuration setting for unimplemented word * (Driver)
- (1355) in-line delay argument too large (Code Generator)
- (1356) fixup overflow referencing * * (0x*) into * byte* at 0x*/0x* -> 0x* (*** */0x*) (Linker)
- (1357) fixup overflow storing 0x* in * byte* at 0x*/0x* -> 0x* (*** */0x*) (Linker)
- (1358) no space for * temps (*) (Code Generator)
- (1359) no space for * parameters (Code Generator)
- (1360) no space for auto/param * (Code Generator)
- (1361) syntax error in configuration argument (Parser)
- (1362) configuration setting *=* redefined (Code Generator)
- (1363) unknown configuration setting (* = *) used (Driver)
- (1364) can’t open configuration registers data file * (Driver)
- (1365) missing argument to pragma "varlocate" (Parser)
- (1366) syntax error in pragma "varlocate" (Parser)
- (1367) end of file in _asm (Parser)
- (1368) assembler message: * (Assembler)
- (1369) can’t open proc file * (Driver)
- (1370) peripheral library support is not available for the * (Driver)
- (1371) float type can’t be bigger than double type; double has been changed to * bits (Driver)
- (1372) interrupt level cannot be greater than * (Code Generator)
- (1374) the compiler feature "*" is no longer supported, * (Driver)
- (1375) multiple interrupt functions (* and *) defined for device with only one interrupt vector (Code Generator)
- (1376) initial value (*) too large for bitfield width (*) (Code Generator)
- (1377) no suitable strategy for this switch (Code Generator)
- (1378) syntax error in pragma "*" (Parser)
- (1379) no suitable strategy for this switch (Code Generator)
- (1380) unable to use switch strategy "*" (Code Generator)
- (1381) invalid case label range (Parser)
- (1385) * "*" is deprecated (declared at *:*) (Parser)
- (1386) unable to determine the semantics of the configuration setting "*" for register "*" (Parser, Code Generator)
- (1387) in-line delay argument must be constant (Code Generator)
- (1388) configuration setting/register of "*" with 0x* will be truncated by 0x* (Parser, Code Generator)
- (1389) attempt to reprogram configuration * "*" with * (is *) (Parser, Code Generator)
- (1390) identifier specifies insignificant characters beyond maximum identifier length (Parser)
- (1391) constant object size of * exceeds the maximum of * for this chip (Code Generator)
- (1392) function "*" is called indirectly from both mainline and interrupt code (Code Generator)
- (1393) possible hardware stack overflow detected, estimated stack depth: * (Code Generator)
- (1394) attempting to create memory range ( * - * ) larger than page size, * (Driver)
- (1395) notable code sequence candidate suitable for compiler validation suite detected (*) (Code Generator)
- (1396) "*" positioned in the * memory region (0x* - 0x*) reserved by the compiler (Code Generator)
- (1397) unable to implement non-stack call to "*"; possible hardware stack overflow (Code Generator)
- (1401) eeprom qualified variables can’t be accessed from both interrupt and mainline code (Code Generator)
- (1402) a pointer to eeprom can’t also point to other data types (Code Generator)
- (1403) pragma "*" ignored (Parser)
- (1404) unsupported: * (Parser)
- (1405) storage class specifier "*" ignored (Parser)
- (1406) auto eeprom variables are not supported (Code Generator)
- (1407) bit eeprom variables are not supported (Code Generator)
- (1408) ignoring initialization of far variables (Code Generator)
- (1409) warning number used with pragma "warning" is invalid (Parser)
- (1410) can’t assign the result of an invalid function pointer (Code Generator)
- (1411) Additional ROM range out of bounds (Driver)
- (1412) missing argument to pragma "warning disable" (Parser)
- (1413) "*" is positioned at address 0x0 and has had its address taken; pointer comparisons can be invalid (Code Generator)
- (1414) option * is defunct and has no effect (Driver)
- (1415) argument to "merge" psect flag must be 0 or 1 (Assembler)
- (1416) psect flag "merge" redefined (Assembler)
- (1417) argument to "split" psect flag must be 0 or 1 (Assembler)
- (1418) Attempt to read "control" qualified object which is Write-Only (Code Generator)
- (1419) using the configuration file *; you can override this with the environment variable XC_XML (Driver)
- (1420) ignoring suboption "*" (Driver)
- (1421) the qualifier __xdata is not supported by this architecture (Parser)
- (1422) the qualifier __ydata is not supported by this architecture (Parser)
- (1423) case ranges are not supported (Driver)
- (1424) short long integer types are not supported (Parser)
- (1425) __pack qualifier only applies to structures and structure members (Parser)
- (1426) 24-bit floating point types are not supported; * have been changed to 32-bits (Driver)
- (1427) machine-dependent path specified in name of included file, use -I instead (Preprocessor)
- (1429) attribute "*" is not understood by the compiler; this attribute will be ignored (Parser)
- (1430) section redefined from "*" to "*" (Parser)
- (1431) only variable and function definitions at file-scope can be located using __section() (Parser)
- (1432) "*" is not a valid section name (Parser)
- (1433) function "*" could not be inlined (Assembler)
- (1434) missing name after pragma "intrinsic" (Parser)
- (1435) variable "*" is incompatible with other objects in section "*" (Code Generator)
- (1436) "*" is not a valid nibble, use hexadecimal digits only (Parser)
- (1437) error reading CMF (*:*): * (Cromwell)
- (1438) pragma "*" options ignored (Parser)
- (1439) message: * (Parser)
- (1440) big-endian storage is not supported by this compiler (Parser)
- (1441) use __at() instead of '@' and ensure the address is applicable (Parser)
- (1442) type used in definition is incomplete (Parser)
- (1443) unknown --EXT sub-option "*" (Driver)
- (1444) respecified C extension from "*" to "*" (Driver)
- (1445) #advisory: * (Preprocessor)
- (1446) #info: * (Preprocessor)
- (1447) extra -L option (-L*) ignored (Preprocessor)
- (1448) no dependency file type specified with -L option (Preprocessor)
- (1449) unknown dependency file type (*) (Preprocessor)
- (1450) invalid --*-spaces argument (*) (Cromwell)
- (1451) no * spaces have been defined (Cromwell)
- (1452) one or more spaces are defined as data and code (Cromwell)
- (1453) stack size specified for non-existent * interrupt (Driver)
- (1454) stack size specified (*) is greater than available (*) (Driver)
- (1455) unrecognized stack size "*" in "*" (Driver)
- (1456) too many stack size specifiers (Driver)
- 1457 local variable "*" cannot be made absolute (Code Generator)
- 1458 Omniscient Code Generation not available in Standard mode (Driver)
- 1459 peripheral library support is missing for the * (Driver)
- 1460 function-level profiling is not available for the selected chip (Driver)
- 1461 insufficient h/w stack to profile function "*" (Code Generator)
- 1462 reentrant data stack model option conflicts with stack management option and will be ignored (Code Generator)
- 1463 reentrant data stack model not supported on this device, using compiled stack for data (Code Generator)
- 1464 number of arguments passed to function "*" does not match function's prototype (Code Generator)
- 1465 the stack frame size for function "*" (* bytes) has exceeded the maximum allowable (* bytes) (Code Generator)
- 1466 registers * unavailable for code generation of this expression (Code Generator)
- 1467 read-only target "*" may be indirectly written via pointer (Code Generator)
- 1468 unknown ELF/DWARF specification (*) in --output option (Driver)
- 1469 function specifier "reentrant/software" used with "*" ignored (Code Generator)
- (0) delete what ? (Libr)
- (0) incomplete ident record (Libr)
- (0) incomplete symbol record (Libr)
- (0) library file names should have.lib extension: * (Libr)
- (0) module * defines no symbols (Libr)
- (0) replace what ? ( Libr)
 
 
- Appendix D. Implementation-Defined Behavior- D.1 Introduction
- D.2 Translation (G.3.1)
- D.3 Environment (G.3.2)
- D.4 Identifiers (G.3.3)- D.4.1 The number of significant initial characters (beyond 31) in an identifier without external linkage (6.1.2)
- D.4.2 The number of significant initial characters (beyond 6) in an identifier with external linkage (6.1.2)
- D.4.3 Whether case distinctions are significant in an identifier with external linkage (6.1.2)
 
- D.5 Characters (G.3.4)- D.5.1 The members of the source and execution character sets, except as explicitly specified in the Standard (5.2.1)
- D.5.2 The shift states used for the encoding of multibyte characters (5.2.1.2)
- D.5.3 The number of bits in a character in the execution character set (5.2.4.2.1)
- D.5.4 The mapping of members of the source character set (in character and string literals) to members of the execution character set (6.1.3.4)
- D.5.5 The value of an integer character constant that contains a character or escape sequence not represented in the basic execution character set or the extended character set for a wide character constant (6.1.3.4)
- D.5.6 The value of an integer character constant that contains more than one character, or a wide character constant that contains more than one multibyte character (3.1.3.4)
- D.5.7 Whether a plain char has the same range of values as signed char or unsigned char (6.2.1.1)
 
- D.6 Integers (G.3.5)- D.6.1 The representations and sets of values of the various types of integers (6.1.2.5)
- D.6.2 The result of converting an integer to a shorter signed integer, or the result of converting an unsigned integer to a signed integer of equal length, if the value cannot be represented (6.2.1.2)
- D.6.3 The results of bitwise operations on signed integers (6.3)
- D.6.4 The sign of the remainder on integer division (6.3.5)
- D.6.5 The result of a right shift of a negative-valued signed integral type (6.3.7)
 
- D.7 Floating-Point (G.3.6)- D.7.1 The representations and sets of values of the various types of floating-point numbers (6.1.2.5)
- D.7.2 The direction of truncation when an integral number is converted to a floating-point number that cannot exactly represent the original value (6.2.1.3)
- D.7.3 The direction of truncation or rounding when a floating-point number is converted to a narrower floating-point number (6.2.1.4)
 
- D.8 Arrays and Pointers (G.3.7)- D.8.1 The type of integer required to hold the maximum size of an array; that is, the type of the sizeof operator, size_t (6.3.3.4, 7.1.1)
- D.8.2 The result of casting a pointer to an integer, or vice versa (6.3.4)
- D.8.3 The type of integer required to hold the difference between two s to members of the same array, ptrdiff_t (6.3.6, 7.1.1)
 
- D.9 Registers (G.3.8)
- D.10 Structures, Unions, Enumerations, and Bit-Fields (G.3.9)- D.10.1 A member of a union object is accessed using a member of a different type (6.3.2.3)
- D.10.2 The padding and alignment of members of structures (6.5.2.1)
- D.10.3 Whether a plain int bit-field is treated as a signed int bit-field or as an unsigned int bit-field (6.5.2.1)
- D.10.4 The order of allocation of bit-fields within an int (6.5.2.1)
- D.10.5 Whether a bit-field can straddle a storage-unit boundary (6.5.2.1)
- D.10.6 The integer type chosen to represent the values of an enumeration type (6.5.2.2)
 
- D.11 Qualifiers (G.3.10)
- D.12 Declarators (G.3.11)
- D.13 Statements (G.3.12)
- D.14 Preprocessing Directives (G.3.13)- D.14.1 Whether the value of a single-character character constant in a constant expression that controls conditional inclusion matches the value of the same character constant in the execution character set (6.8.1)
- D.14.2 Whether such a character constant can have a negative value (6.8.1)
- D.14.3 The method for locating includable source files (6.8.2)
- D.14.4 The support of quoted names for includable source files (6.8.2)
- D.14.5 The mapping of source file character sequences (6.8.2)
- D.14.6 The behavior on each recognized #pragma directive (6.8.6)
- D.14.7 The definitions for __DATE__ and __TIME__ when, respectively, the date and time of translation are not available (6.8.8)
 
- D.15 Library Functions (G.3.14)- D.15.1 The null constant to which the macro NULL expands (7.1.6)
- D.15.2 The diagnostic printed by, and the termination behavior of, the assert function (7.2)
- D.15.3 The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions (7.3.1)
- D.15.4 The values returned by the mathematics functions on domain errors (7.5.1)
- D.15.5 Whether the mathematics functions set the integer expression errno to the value of the macro ERANGE on underflow range errors (7.5.1)
- D.15.6 Whether a domain error occurs, or a zero is returned, when the fmod function has a second argument of zero (7.5.6.4)
- D.15.7 The set of signals for the signal function (7.7.1.1)
- D.15.8 The output for %p conversion in the fprintf function (7.9.6.1)
- D.15.9 The local time zone and Daylight Saving Time (7.12.1)- Corporate Office
- Atlanta
- Austin, TX
- Boston
- Chicago
- Cleveland
- Fax: 216-447-0643
- Dallas
- Detroit
- Houston, TX
- Indianapolis
- New York, NY
- San Jose, CA
- Canada - Toronto
- Fax: 852-2401-3431
- Australia - Sydney
- China - Beijing
- China - Shanghai
- India - Bangalore
- Korea - Daegu
- Korea - Seoul
- Singapore
- Taiwan - Taipei
- Fax: 43-7242-2244-393
- Denmark - Copenhagen
- France - Paris
- Germany - Dusseldorf
- Germany - Pforzheim
- Italy - Milan
- Italy - Venice
- Spain - Madrid
- Worldwide Sales and Service
 
 
 
- Glossary
- Index
- Worldwide Sales and Service