29.6 Revision G (February 2018)

  • Removed reference to obsolete Standard (STD) license.
  • Section 3.3.7 “How Do I Build Libraries?” - updated for new 5.4.1.3.
  • Section 3.4.2.5 “Are There Any SFRs Usage Considerations?” added section.
  • Section 3.6.2 “Why Can’t I Debug my Code after I Optimize?” - updated for new 18.4.
  • Section 3.6.6 “What are the Speed vs. Size Tradeoffs?” added section.
  • Section 4.5.3 “xc16-gcc (16-Bit C Compiler)” - Table 4-5 updated and footnotes added, -mnear-char removed. Table 4-6 updated to remove-mno-override-inline.
  • Section 4.5.4 “xc16-ld (16-Bit Linker)” - corrected definition for “Use Local Stack”.
  • Section 5.2.1 “Drive Command-Line Format” - added linker script to command-line example to avoid inconsistent warnings depending on device.
  • Section 5.4.1.2 “User-Defined Libraries” - moved some content to 5.4.1.3.
  • Section 5.4.1.3 “User-Defined Libraries Development” - added section.
  • Section 5.7.1 “Options Specific to 16-Bit Devices” - added -mno-eds-warn, -mno-file, -moptimize-page-setting, -mlegacy-libc, -mprint-builtins, -mprint-devices, -mprint-mchp-search-dirs, -mno-errata, -msmart-io-format, -msfr-warn.
  • Section 5.7.6.3 “Options that Specify Machine-Independent Flags” - added -fnofallback.
  • Section 5.7.4.1 “Options to Control the Amount and Types of Warnings” - remove from Table 5-8 -pedantic, -pedantic-errors and -Wunused-parameter.
  • Section 5.7.4.2 “Options that are not Implied by -Wall” - added -Wextra; fixed -Wlarger-than=len.
  • Section 5.7.7 “Options for Controlling the Preprocessor” - added -iquote.
  • Section 6.3.2 “Device Support Information” - added section.
  • Section 6.8 “Using EDS” - added section.
  • Section 8.11 “Variable Attributes” - first paragraph updated; clarified persistent attribute usage.
  • Section 13.2.2 “Function Attributes” - added optimize attribute.
  • Section 14.4 “Specifying the Interrupt Vector” - changed to AIVTDIS = ON.
  • Section 18.3 “How to Enable Optimization” - added section.
  • Section 18.4 “Using Optimizations” - added section.
  • Section 19.4.6 “Other Macros” - __LINE__ macro description corrected.
  • Appendix G. “Built-in Functions.” - __builtin_write_RTCC_WRLOCK does not replace __builtin_write_RTCWEN, corrected; __builtindisi corrected to __builtin_disi; __builtin_movsac and __builtin_sac return value corrected;