Skip to content

Commit c9fe2a3

Browse files
committed
2 parents bfa4909 + f9f971d commit c9fe2a3

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

‎CHANGELOG.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,30 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
88
## [Unreleased]
99

1010
### Added
11+
- **feat(compiler): Finalize core features and align test suites** (2025-07-01 – jarroddavis68)
12+
This major update implements foundational control flow structures, a comprehensive C-compatible type system, and a robust callback architecture. This commit also finalizes the implementation by correcting the lexer for full BNF conformance and aligning the entire test suite with the new type system.
13+
- Implemented if-then-else, while-do, repeat-until, and for-to/downto loops.
14+
- Replaced the generic Integer type with the full set of Int8/16/32/64 and UInt8/16/32/64 types.
15+
- Implemented implicit numeric conversions (narrowing and widening) for integers and floats.
16+
- Added support for signed vs. unsigned arithmetic and comparisons in the IR generator.
17+
- Corrected the lexer to fully support both $ and 0x prefixed hexadecimal literals, ensuring BNF conformance.
18+
- Updated the entire test suite (Lexer, Parser, Semantic, IRGen, Compiler) to use the new specific-width type system.
19+
- Refactored the IR generator's binary operator handling to resolve compiler warnings and improve robustness.
20+
- Updated project documentation, including TODO.md to reflect current progress and README.md for better clarity.
21+
- Generated a new, comprehensive test report validating that all 22 tests pass, confirming system stability.
22+
- Introduced a new CPascal.Common unit to resolve a circular reference and hold shared types.
23+
- Added OnProgress, OnError, and OnWarning callbacks to the main TCPCompiler class.
24+
- Implemented a custom ECPCompilerError exception to pass structured error data.
25+
- The semantic analyzer now collects and reports warnings for issues like narrowing conversions.
26+
1127
- **Repo Update** (2025-06-29 – jarroddavis68)
1228
- Added documentation (language bnf, specification, coverage, api reference, c migration)
1329

1430
- **Create FUNDING.yml** (2025-06-29 – Jarrod Davis)
1531

1632

1733
### Changed
34+
- **Merge branch 'main' of https://github.com/tinyBigGAMES/CPascal** (2025-07-01 – jarroddavis68)
35+
1836
- **Initial commit** (2025-06-29 – Jarrod Davis)
1937

0 commit comments

Comments
 (0)