major changes between 11.00 and 12.00

General:
  • Replaced command-line source code formatter cformat.exe with new pofmt.exe.
  • Added experimental support for C2X <stdckdint.h> and <stdbit.h>
  • Added experimental support for C2X runtime functions c8rtomb, mbrtoc8, memalignment, memset_explicit, strfromf, strfromd, strfroml, timegm, fegetmode, fesetmode, fesetexcept, fetestexceptflag, and some (but not all) new math functions (see help file).
  • Added experimental support for C2X math functions in <tgmath.h>.
  • Added experimental support for C2X modifiers with printf and scanf families.
  • Added experimental support for C2X "generic" runtime functions (qualifier on return type depends on qualifier on input argument): bsearch, bsearch_s, memchr, strchr, strpbrk, strrchr, strstr, wcschr, wcspbrk, wcsrchr, wcsstr, wmemchr.
  • Added C runtime functions _cgetws, _cputws, _getwch, _getwche and _ungetwch (since console mode apparently isn't dead yet).
  • Changed format of name argument to runtime function setlocale, and refactored much of the locale handling.
  • Revised signature (qualifiers) of _exec*, _wexec*, _spawn* and _wspawn* family of runtime functions.
  • Added new debug format records for C2X, and to break a problematic 64 kB size limit (an enumeration with many enumerators wouldn't fit, for example).
  • Added some missing Windows API definitions to memoryapi.h, minwinbase.h, sdkddkver.h, winnt.h.
  • Fixed problem with standard C conformance in swprintf and vswprintf.

IDE:
  • Added experimental support for more features from the upcoming C2X standard.
  • Added experimental support for replacing text using regular expressions.
  • Added new source code formatter with more options.
  • Added support for "copy from" when creating a new project mode.
  • More work on internal "syntax" interface, trying to separate text editor from language-dependent code completion tasks. This means f.e. that assembly files now can have INVOKE and member list completion (but the quality depends on what the browse info builder can find).
  • Refactored reading and writing of many image/picture formats. Added some more properties.
  • Added minimal support for animated GIFs (just for fun; use <Shift>+<PgDn>/<PgUp> to cycle through; make sure to watch the preview window).
  • Revised horizontal scrolling and selection painting in binary dump windows.
  • Revised file differences to be faster with large files (comparing two files with 100000+ lines used to take "forever").
  • Added new setting for caret width in insertion mode (hopefully helping visibility).
  • Added debugger support for new debug format records.
  • Improved debugger modules tab.
  • Various other improvements and bug fixes.

Compiler:
  • Added experimental support for more features from the upcoming C2X standard: new spelling alignas, alignof, bool, static_assert, and thread_local, more attributes, __VA_OPT__(), #warning, #embed and __has_embed(), _BitInt(N), typeof() and typeof_unqual(), user-defined enumeration type, "zero initialization" (={}), function signatures, constexpr, nullptr, and more (see help file).
  • Added new initializer parser.
  • Added support for more GNU extensions: compound statement expression, conditional expression with omitted middle expression (x ? : y). and , ## __VA_ARGS__.
  • Added better detection of lost bits in floating-point conversions (better in the sense that something is better than nothing).
  • Changed private __unaligned specifier into a qualifier, meaning it's now associated with a type (and not some symbol).
  • Revised cost model for inlining and unrolling, likely changing when it's done (or not).
  • Changed optimizing strategy from "none" to "some" for SEH constructs __try-__except and __try-__finally.
  • Added support for new debug format records.
  • Fixed plenty of problems with the value range and the known bits evaluators.
  • Various other improvements and bug fixes.

Macro assembler:
  • Added more complete support for UTF-8 in identifiers (and other places). Debugging format is now at the same version as the C compiler.
  • Added support for instructions clrssbsy, incsspd, incsspq, rdsspd, rdsspq, rstorssp, saveprevssp, setssbsy, wrssd, wrssq, wrussd, wrussq, serialize, wbnoinvd.
  • Added better support for WIG, enabling shorter instruction encoding.

Linker:
  • Added support for new debug format records, including conversion of object files with older records (not yet recompiled).

Browse Info Manager:
  • Big refactoring to support all the new C2X stuff.

Install builder:
  • Fixed some reported bugs.

Dump utility:
  • Switched to Unicode output, so f.e. UTF-8 symbols with international characters should come out a bit better.
  • Added dump of new debug format records.

PE/COFF Viewer
  • Added basic info about Pelles C Debug Information (executable and separate debug files).
  • Added more load configuration fields.