2026-10-01  Andrey V. Kosteltsev

	* mcpu-cpp 1.0.2: implement LibMPU, LibMPUIO congiguring check
	  using libmpu.m4, libmpuio.m4.

2026-09-30  Andrey V. Kosteltsev

	* mcpu-cpp 1.0.1: integrate English and Russian mcpu-cpp(1) manual
	  pages into the Automake build and install them through the standard
	  system man directory.

2026-09-30  Andrey V. Kosteltsev

	* mcpu-cpp 1.0.0: first public release of the preprocessor.

2026-09-30  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.51: remove Russian preprocessing-directive aliases while
	  retaining full Unicode identifier/text support.  Update the synchronized
	  manuals with a GNU-compatible-features section and remove predecessor
	  references.  Adjust only alias-related and version-sensitive tests.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.50: replace the single normative manual with synchronized
	  Russian and English editions, update the manual to the complete 0.0.49
	  feature set, add a LibMPU/LibMPUIO-style developer bootstrap that
	  regenerates the ZUBR parser and Autotools files, add a .gitignore for
	  reproducible/generated Git-tree files, and keep release archives and the
	  existing ordinary build model self-contained and unchanged.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.49: compact invisible source-line gaps using GNU CPP's
	  0..7-newline versus 8+-linemarker policy while preserving logical source
	  coordinates, include enter/return markers, __LINE__, diagnostics and #line.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.48: normalize whitespace belonging to macro replacement lists
	  without reformatting ordinary source text or actual macro arguments; keep
	  literal contents and preprocessing-token boundaries intact.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.47: implement standard __VA_OPT__(pp-tokens) with expanded
	  variadic-emptiness semantics, balanced parentheses, #/##/placemarker/rescan
	  integration, and explicitly omit historical GNU comma swallowing.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.46: add C99-style variadic function-like macros with ...
	  and __VA_ARGS__; integrate the variable argument with ordinary prescan,
	  stringification, token concatenation, placemarkers, rescanning and macro
	  dumps; intentionally leave GNU named args... and __VA_OPT__ unsupported,
	  document the contract and add dedicated regression coverage.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.45: implement GNU-like -MG for -M/-MM; integrate missing
	  generated headers and forced files with the ordered dependency registry
	  through a separate unresolved textual identity domain, preserve physical
	  st_dev/st_ino deduplication for real files and GNU-like user/system
	  filtering, document the model and add dedicated regression coverage.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.44: implement GNU-like -MT/-MQ dependency targets with
	  repeated and attached forms, exact -MT output, Make-quoted -MQ output and
	  multiple targets per rule; document the 0.0.43 -include/-imacros forced-
	  file contract and the new dependency-target behavior in doc/mcpu-cpp.md,
	  and add dedicated regression coverage.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.42: implement -w as the global warning-output gate; suppress
	  every warning class before -Werror promotion regardless of command-line
	  order, leave real errors unaffected, expose -w in --help, document the
	  warning policy, and add regression coverage for all existing warning
	  sources.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.41: clean the public command-line interface, remove
	  obsolete compatibility options, document --object-suffix, add selected
	  Russian directive aliases (#определить, #строка, #включить,
	  #включить_следующий, #отменить, #управление, #язык), rename the product
	  description to "MCPU languages preprocessor", and remove predecessor-
	  oriented wording from comments and documentation.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.40: implement warning control with -Wcomment/-Wcomments,
	  -Wno-comment/-Wno-comments, -Wall, -Werror and -Wno-error; preserve
	  specific-option priority over -Wall, promote every emitted warning via
	  one diagnostic policy, add comment-lexing diagnostics and regression
	  coverage, and document the warning model as a separate normative section.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.39: split final macro dumping by macro origin; make -dM
	  report only source/include and command-line macros, implement -dMP as
	  predefined macros first followed by ordinary macros, preserve #undef
	  final-state semantics and deterministic per-group ordering, leave -dD
	  unchanged, and add documentation/regression coverage.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.38: add -MD/-MMD side-effect dependency generation and
	  -MF dependency-output selection; derive default .d names from the input
	  basename or ordinary -o output, preserve the established -M/-MM graph
	  and system classification, and add documentation/regression coverage.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.37: replace the versioned, compile-time-bound installation
	  root with a relocatable `$libdir/mcpu` ecosystem tree; derive the runtime
	  root from the physical executable path, derive the packaged config and
	  default system include tree from that root, retain configuration overrides,
	  add physical relocation regression coverage, and document relocatability as
	  a general MCPU ecosystem principle for cpp/as/ld/run and future libraries.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.36: fix --no-config so it suppresses only configuration-file
	  reads while retaining the compiled MCPU_CPP_SYSTEM_INCLUDE_PATH default;
	  keep -nostdinc as the mechanism that removes the standard-system include
	  tree; add regression coverage for -dsearch-dirs, -dconfig, -v and explicit
	  include classes, and document the corrected configuration contract.

2026-09-29  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.35: implement basic -M/-MM dependency generation directly
	  from the existing include pipeline; classify system dependencies by real
	  include provenance and propagate system context transitively; deduplicate
	  physical files by device/inode identity; keep logical #line names out of
	  make rules; add documentation and regression coverage.

2026-09-28  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.33: align configure output with the LibMPU/LibMPUIO/ZUBR
	  package family by adding the common headline and AC_MSG_CFG_PART section
	  headings while preserving the detailed final summary; normalize every
	  textual occurrence of the author given name to Andrey.

2026-09-28  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.32: make -v report one effective include-configuration
	  snapshot instead of logging every assignment from every configuration
	  file; add -dsearch-dirs and regression coverage for semantic search-order
	  dumping, compiled system defaults and -nostdinc; document both interfaces.

2026-09-28  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.31: introduce versioned MCPU installation under
	  $libdir/mcpu-0.0.31, install a public $bindir/mcpu-cpp symlink, move
	  the packaged configuration into the versioned tree, treat /etc/mcpu as
	  an optional administrator override, keep the unversioned per-user config
	  at $HOME/.mcpu/mcpu-cpp.conf with highest priority, and restore
	  MCPU_CPP_SYSTEM_INCLUDE_PATH as a completely replaceable system-header
	  root.  Document the configuration hierarchy, sandbox use case and
	  #include_next interaction as normative contracts.

2026-09-28  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.30: make command-line include classes override configured
	  defaults and define the complete normative search chain.  Rename the
	  configured system root to MCPU_CPP_SYSTEM_INCLUDE_DIR, derive fixed
	  language subdirectories internally, allow an empty root to disable the
	  configured system tree, keep AFTER language-independent, extend
	  #include_next across every class, add full-order regression coverage and
	  document the wrapper-header/search contract in a dedicated section.

2026-09-28  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.29: implement GNU-style #include_next.  Preserve the
	  physical include search entry that supplied each nested header and resume
	  searching strictly after it across user, explicit-system, configured-system
	  and idirafter classes.  #include_next does not re-search the current source
	  directory and treats quoted/angle operands identically; macro-expanded
	  operands remain supported.  Add dedicated wrapper-header regression tests.

2026-09-28  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.28: implement #error/#warning diagnostics with logical
	  source locations, no macro expansion of diagnostic text, whitespace
	  normalization outside quoted tokens, conditional suppression and the
	  historical Russian aliases #ошибка/#предупреждение.  Add regression
	  coverage and document the diagnostic-directive contract.

2026-09-28  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.27: implement zNNN/ZNNN integer-width suffixes with an
	  optional U/u in #if expressions.  Parse NNN as decimal, normalize valid
	  8/16/32/64-bit literals by sign or zero extension to the fixed 64-bit
	  evaluator, reject widths above 64, warn and ignore invalid smaller widths,
	  reject C L/LL suffixes and malformed suffix continuations.  Remove the
	  obsolete assertion -A action and -dMA modifier.  Expand the manual with
	  the normative conversion model and add dedicated regressions.

2026-09-28  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.26: replace the temporary hand-written #if parser with
	  mcpp-expr.zubr generated by ZUBR 4.1.0; retain the current defined()/
	  macro-expansion pipeline, add an UCS-2 lexer using LibMPU iatoui() for
	  numeric conversion, move fixed 64-bit expression semantics into
	  mcpp-semantic.c/h, preserve short-circuit and historical shift behavior,
	  and add dedicated regression coverage.

2026-09-28  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.25: allow `$` as a preprocessing-identifier continuation
	  character but never as identifier start; parse -D macro declarators
	  separately from replacement values so invalid suffixes are silently
	  discarded instead of entering the replacement list; apply matching -U
	  prefix handling; document shell quoting and add regressions.

2026-09-28  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.24: fix -dD provenance for command-line macros.  Track
	  builtin/source/command-line macro origin and emit # 0 "<command-line>"
	  for definitions installed through -D while preserving # 0 "<built-in>"
	  for predefined/builtin definitions.  Add regression coverage.

2026-09-28  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.23: implement -D/-U command-line macros.  Decode only
	  their payloads from UTF-8 to strict UCS-2, reuse the ordinary #define/
	  #undef parser and macro engine, preserve action order after builtin/
	  predefined installation, support Unicode XID identifiers and function-
	  like macros, reject invalid UTF-8/non-UCS-2 payloads, and add dedicated
	  regression coverage.

2026-09-28  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.22: replace the ASCII-only preprocessing-identifier
	  predicates with LibMPUIO 1.0.4 Unicode 18.0.0 XID_Start/XID_Continue
	  classification.  Keep underscore as an explicit language identifier
	  character, preserve case-sensitive macro names, require the UCS-2 ctype
	  API at configure time, and add regression coverage for Cyrillic, Latin,
	  Greek, combining marks, non-ASCII digits, macro parameters, #if/defined,
	  ## rescanning.

2026-09-27  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.21: implement GNU-compatible ## token concatenation for
	  object-like and function-like macros; use raw arguments next to ##, keep
	  empty arguments as placemarkers, validate the pasted preprocessing token,
	  rescan the resulting replacement list, preserve # stringification
	  interaction, diagnose invalid/end-position uses, and add regressions.

2026-09-27  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.20: keep the quoted #lang implementation contract unchanged,
	  strengthen its case-insensitive regression coverage, and synchronize every
	  package-version regression expectation with the release version.

2026-09-27  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.19: require a quoted #lang language name; validate it
	  case-insensitively against the internal language table only, reject empty
	  or whitespace-containing names and multi-physical-line forms, preserve the
	  original spelling inside quotes, normalize external whitespace in output,
	  and add dedicated regression coverage.

2026-09-27  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.18: implement conditional-compilation control flow;
	  consume #if/#ifdef/#ifndef/#elif/#else/#endif instead of emitting them,
	  skip inactive branches, evaluate #if expressions with defined and the
	  historical operator precedence.  Restore GNU-compatible line control:
	  generated line information uses # N "file" linemarkers, include entry and
	  return use flags 1/2, and input #line updates __LINE__/__FILE__ instead of
	  passing through to output.  Add dedicated regression coverage.

2026-09-27  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.17: finish comment whitespace cleanup.  Remove blanks left
	  before end-of-line comments, including multi-line block comments, while
	  preserving the separator required by comments between adjacent tokens.

2026-09-27  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.16: implement -dD output; keep source #define directives
	  and emit predefined definitions with built-in markers; remove whitespace
	  left on comment-only lines; defer the UCS-2 range check until after
	  comment removal and add dedicated regressions.

2026-09-25  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.13: implement function-macro stringification (#);
	  preserve raw arguments for stringification, lazily expand ordinary
	  argument occurrences, handle empty actual arguments correctly, keep ##
	  rejected, and add dedicated stringification/dump/error regressions.

2026-09-25  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.12: correct INT/UINT DECIMAL_DIG semantics by computing
	  decimal digits from the known language type width, excluding signs and
	  terminating NUL characters; add exact full-range regression coverage.

2026-09-25  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.11: publish integer decimal-digit metadata for every
	  LibMPU integer width and Real decimal/mantissa precision for every Real
	  width through MPU_REAL_IO_LIMIT; replace FLOAT_WORD_ORDER with explicit
	  MCPU byte/word-order macros, add maximum-width capability macros, and
	  rename SIZEOF_PTRDIFF_T to SIZEOF_PTRDIFF.

2026-09-25  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.10: move configured size/ssize metadata fully into the
	  MCPU namespace; use char8/char16-native SIZEOF names; add Real exponent
	  storage size and maximum textual character-count metadata for every
	  configured Real width through MPU_REAL_IO_LIMIT; extend -dM regressions.

2026-09-25  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.9: correct ptrdiff to signed int64; add the MCPU ssize
	  profile; extend TYPE/WIDTH/SIZEOF metadata through NB_I_MAX * 8 for
	  integers and MPU_REAL_IO_LIMIT for Real/Complex; define Complex WIDTH
	  as the language parameter while keeping double storage size; add
	  exhaustive predefined-range regression coverage.

2026-09-25  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.8: refine the predefined MCPU ABI contract: rename the
	  preprocessor/version and LibMPU-profile macros, use char8/char16,
	  cap textual numeric predefines at 256 bits, add LibMPU-derived decimal
	  precision macros, fix pointer/ptrdiff width at 64 bits, and derive
	  active-language subdirectories from configured system include roots.

2026-09-25  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.7: establish the first serious predefined ABI/environment
	  layer using the LibMPU/LibMPUIO configure model and GNU GCC probes;
	  add MCPU/fixed-width integer/Real/Complex/type-size/endian predefines,
	  lazy LibMPU-generated Real limits, and the -dM/-dconfig inspection
	  options.

2026-09-25  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.6: implement the neutral predefined-macro mechanism: __FILE__,
	  __LINE__, __BASE_FILE__, __INCLUDE_LEVEL__, __DATE__, __TIME__ and __VERSION__;
	  preserve include nesting, fixed startup timestamp and non-rescanned special
	  expansion semantics.

2026-09-25  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.5: move project-owned M4 logic to acsite.m4, reserve m4/
	  for external macros, document the future explicit `make parser` Bison
	  workflow, and implement function-like macro definitions/calls and argument
	  expansion.

2026-09-25  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.4: implement the first macro-engine layer, add
	  backslash-newline/comment preprocessing phases, object-like #define/#undef,
	  recursive object-macro expansion and computed #include;
	  add doc/mcpu-cpp.md as the implementation-order manual.

2026-09-25  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.3: make MCPU_CPP_INCLUDE_PATH a common include root
	  visible in every language state, keep switched-language include paths
	  as additional higher-priority configured user paths, and move the
	  configuration hierarchy to /etc/mcpu/mcpu-cpp.conf and
	  $HOME/.mcpu/mcpu-cpp.conf.

2026-09-25  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.2: restore LANG_0 as the initial base language state, replace
	  historical vasm with as, remove the temporary C-specific include path,
	  define MCPU_CPP_INCLUDE_PATH as the include root of language 0, tighten
	  the canonical #lang names, and add
	  the public `make tests` target.

2026-09-24  Andrey V. Kosteltsev

	* mcpu-cpp 0.0.1: initial implementation based on the architecture and
	  semantics required by the MCPU project with a UTF-8/UCS-2 text model.
