What's Changed since classic-ipr
- fix typos by @GorNishanov in #2
- Update CMake scripts to post-3.0 by @MathiasMagnus in #10
- Simplify Lexicon::make_{enum,class,namespace,union} methods. by @GorNishanov in #12
- Build docs with CMake by @MathiasMagnus in #14
- Fix missing Rvalue_Reference in io causing crash. by @d-winsor in #29
- Named_map pointer in impl should be const by @d-winsor in #39
- Fixed build error from ipr::String selecting scalar compare overload. by @d-winsor in #30
- Fix storage for function parameters by @GabrielDosReis in #40
- Replaced deprecated std::iterator base by @d-winsor in #42
- A declaration may not have a matching definition. by @GabrielDosReis in #43
- Small typo fixes in the user guide. by @Xazax-hun in #44
- Create a basic CI to compile project by @Xazax-hun in #46
- Remove autotools build system. by @Xazax-hun in #47
- Improvements to CI by @Xazax-hun in #49
- Add CI badge by @Xazax-hun in #50
- Add mac builder. by @Xazax-hun in #52
- Doc builder only builds doc target by @Xazax-hun in #53
- Parallel build in CI by @Xazax-hun in #62
- Id_expr does not belong to Name hierarchy by @GabrielDosReis in #63
- impl::Empty_stmt need its type set by @GabrielDosReis in #64
- Update the ipr Name sub-hierarchy by @GabrielDosReis in #66
- Move Name out of Expr hierarchy by @GabrielDosReis in #67
- Add test infra using doctest. by @Xazax-hun in #69
- Fix build break by @GabrielDosReis in #72
- Rename type
TemplatetoForallby @GabrielDosReis in #73 - Support fold expressions by @GabrielDosReis in #74
- Owner of home scope of a type declaration by @GabrielDosReis in #75
- Rename Named_map to Template by @GabrielDosReis in #76
- Made CMake variable relative by @d-winsor in #77
- Simplify ipr::Decl a bit by @GabrielDosReis in #78
- Add more documentation to Classic by @Xazax-hun in #84
- Detach the type of continue and break from their parents. Fixes #87. by @Xazax-hun in #88
- Remove Node::node_id by @GabrielDosReis in #89
- Add accessor for empty String by @GabrielDosReis in #90
- Commonalize unique_decl::decl_set overrider by @GabrielDosReis in #91
- Simplify sequences of unique_decl by @GabrielDosReis in #92
- Use Optional more often by @GabrielDosReis in #93
- Add result types to expr_factory. Fixes #1. by @Xazax-hun in #85
- Add missing character types. by @Xazax-hun in #98
- Clarify the role of phantom. by @Xazax-hun in #99
- Add type parameter to continue/break factories by @Xazax-hun in #105
- Add implementation node for Label. Fixes #104. by @Xazax-hun in #108
- Consolidate factory functions for New by @Xazax-hun in #100
- Added conversion nodes and demonstrative tests. by @d-winsor in #112
- Fix bugs with recent conversion PR by @d-winsor in #120
- no functionality change. Remove trailing whitespace by @GorNishanov in #118
- io.cxx: Add printing for Suffix by @GorNishanov in #121
- Add support for source locations by @GorNishanov in #116
- Make Category_code an enum class by @GabrielDosReis in #124
- Merge ipr::If_then and ipr::If_then_else by @GabrielDosReis in #125
- Miscellaneous comment cleanup by @GabrielDosReis in #126
- Merge ipr::Paren_expr and ipr::Initializer_list by @GabrielDosReis in #127
- Rename ipr::Datum to ipr::Construction by @GabrielDosReis in #128
- Fix off by one index error by @GabrielDosReis in #130
- style: nominalize names of structures by @Nostracodus in #131
- Add comment for Construction by @GabrielDosReis in #132
- Remove impl::homogeneous_sequence by @GabrielDosReis in #133
- Change return type of size() by @GabrielDosReis in #134
- Simplify Parameter_list by @GabrielDosReis in #135
- Complete ipr::Attribute hierarchy by @GabrielDosReis in #143
- ipr::Noexcept by @GabrielDosReis in #144
- ipr::Args_cardinality by @GabrielDosReis in #145
- Consolidate boilerplate into abstraction by @GabrielDosReis in #147
- Symbolic values by @GabrielDosReis in #148
- Allow empty shell controlled statements by @GabrielDosReis in #149
- Unify ipr::Symbol by @GabrielDosReis in #151
- Less unification for unary expression structures by @GabrielDosReis in #155
- Fixed the document link to point to Bjarne's website by @GorNishanov in #16
- Set type of
autotype expression by @GabrielDosReis in #156 - Added additional conversions. by @d-winsor in #123
- Representation of lambda expressions by @GabrielDosReis in #158
- Explicit representation of "this" by @GabrielDosReis in #159
- Miscellaneous cleanup [1/n] by @GabrielDosReis in #160
- Remove redundant or useless definitions by @GabrielDosReis in #161
- Miscellaneous cleanup [3/n] by @GabrielDosReis in #162
- Predicate for testing global region by @GabrielDosReis in #163
- Add missing visit function for Closure type. by @Xazax-hun in #164
- Forgotten Lambda code by @GabrielDosReis in #166
- Add a missing const. by @Xazax-hun in #165
- Select C++20 for build by @GabrielDosReis in #168
- More cleanup [4/n] by @GabrielDosReis in #169
- Remove membership() as redundant by @GabrielDosReis in #171
- Fix duplicate linkage nodes by @Xazax-hun in #167
- chore: move doctest's main function into main.cpp by @Codiferous in #174
- Update worflows by @GabrielDosReis in #178
- Miscellaneous cleanup 5/n by @GabrielDosReis in #175
- Miscellaneous cleanup 6/n by @GabrielDosReis in #179
- Remove bracketing from Sequence by @GabrielDosReis in #182
- Miscellaneous cleanup 7/n by @GabrielDosReis in #183
- Add Microsoft Analysis action + organize workflows by @d-winsor in #184
- Add
ipr::Rewriteby @GabrielDosReis in #188 - Implement Where expression node by @GabrielDosReis in #189
- Remove ipr::impl::traits by @GabrielDosReis in #190
- Binding implementation for
ipr::Whereby @GabrielDosReis in #191 - Fix build and test environment on Windows by @GabrielDosReis in #192
- Add translation directives to IPR by @GabrielDosReis in #193
- Gdr/fix workflow on windows again by @GabrielDosReis in #194
- Add Tor type for object constructors and destructors by @GabrielDosReis in #195
- using-declaration as directive by @GabrielDosReis in #196
- Add missing node for
alignofby @GabrielDosReis in #197 - Simplify
ipr::Overloadby @GabrielDosReis in #198 - Remove
ipr::Decl::positionby @GabrielDosReis in #199 - Miscellaneous cleanup 8/n by @GabrielDosReis in #200
- Support pragma as language construct by @GabrielDosReis in #201
- Region has a body by @GabrielDosReis in #202
- Structured_binding as directive by @GabrielDosReis in #203
- Introduce
ipr/synopsisheader by @GabrielDosReis in #204 - Enable rules for the Microsoft C++ Analysis action by @d-winsor in #185
- Multiple declarators in single declaration as a directive by @GabrielDosReis in #205
- Rename
impl::Expr<T>::constraintby @GabrielDosReis in #207 - The type of an alias is now always that of its initializer by @GabrielDosReis in #208
- Static Analysis result cleanup 1/n by @GabrielDosReis in #209
- Cleanup
util::string::arenaby @GabrielDosReis in #211 - Simplify Tor type by @GabrielDosReis in #212
- C and C++ linkage are known to all implementations by @GabrielDosReis in #215
- Use utilities to deduce enumeration underlying type by @GabrielDosReis in #218
name_factory: factories for names by @GabrielDosReis in #219- Built-in types as
constexprobjects by @GabrielDosReis in #220 - Make
impl::Typename::second()final by @GabrielDosReis in #221 - Symbolic truth values by @GabrielDosReis in #222
- Upgrade representation of exception specification by @GabrielDosReis in #223
impl::any_typeis built-in by @GabrielDosReis in #224nullptrsymbol is constexpr by @GabrielDosReis in #225- Remove
name_factory::get_type_idby @GabrielDosReis in #226 - Remove
Rnameby @GabrielDosReis in #227 defaultis a symbolic value by @GabrielDosReis in #228- Fix #114 by @GabrielDosReis in #229
thisis a symbolic value by @GabrielDosReis in #230- Remove unused field
owned_byby @GabrielDosReis in #231 - Rename
impl::singleton_declsettoimpl::singleton_refby @GabrielDosReis in #232 - Simplify
impl::unique_declby @GabrielDosReis in #233 - Replace
impl::val_sequencewith two implementations by @GabrielDosReis in #234 - Make
impl::singleton_overloadcontain its declset by @GabrielDosReis in #235 - Fix #23 by @GabrielDosReis in #236
- Clean up type factory functions by @GabrielDosReis in #237
- Fix #110 by @GabrielDosReis in #238
- Generalize types of statement constituents by @GabrielDosReis in #239
- Remove
ipr::Thisby @GabrielDosReis in #240 - Clean up
impl::Udtby @GabrielDosReis in #241 - Clean up
impl::Udtby @GabrielDosReis in #242 - Remove
ipr::Empty_stmtby @GabrielDosReis in #243 - Add .vs to .gitignore by @davidhunter22 in #245
- Update doctest to 2.4.8 from 2.4.0 by @davidhunter22 in #244
- Fix arena::remaining_header_count by @GorNishanov in #250
- Remove unused declaration. by @Xazax-hun in #252
- Remove unused node category. by @Xazax-hun in #259
- Make Parameter_list type more precise by @Xazax-hun in #260
- Add
ipr::Instantiationby @GabrielDosReis in #262 - Base type of an enum by @GabrielDosReis in #263
- Remove
impl::Template::argsby @GabrielDosReis in #264 - Add files to CMakeLists.txt so they show up in Visual Studio by @davidhunter22 in #247
- Remove
Base_typeby @GabrielDosReis in #265 - Revert "Remove
Base_type" by @GabrielDosReis in #266 - add warehouse by @GorNishanov in #271
- restore ipr::Region::owner(), added a usage example by @GorNishanov in #269
- Cleanup up
owner()after resurrection by @GabrielDosReis in #272 - Add
ipr::Phased_evaluationby @GabrielDosReis in #273 - Refactor
Mapping[1/n] by @GabrielDosReis in #274 - Refactor
Mapping[2/n] by @GabrielDosReis in #275 - Distinguish immotile nodes from the exceptions by @GabrielDosReis in #276
- Default visit of
Annotationby @GabrielDosReis in #277 - Make
Nodeconstructor protected by @GabrielDosReis in #278 <ipr/synopsis>should have no dependency by @GabrielDosReis in #279- Use
UnaryandBinaryforAttributeby @GabrielDosReis in #280 - Enable link-time optimization by @GabrielDosReis in #281
- Explicitly run CI/CD for Release and Debug by @GabrielDosReis in #282
- Update README.md by @GabrielDosReis in #284
- Use UTF-8 for strings and identifiers by @GabrielDosReis in #285
- Workaround GH ubuntu-latest runner issue by @GabrielDosReis in #288
- Rework indirector form hierarchy by @GabrielDosReis in #287
- Update compiler versions on ubuntu-latest by @GabrielDosReis in #289
- Rework of declarator species by @GabrielDosReis in #290
- Refine C++ form for declarator-id by @GabrielDosReis in #291
- Expand on C++ forms for initialization by @GabrielDosReis in #292
- Reference v0.1..1 of MSFT Code Analysis Action by @GabrielDosReis in #293
- Add support for constraints by @GabrielDosReis in #294
- Fix build break after accidental commit by @GabrielDosReis in #295
- Denotation for decl-specifier by @GabrielDosReis in #296
- Symbolic denotation of type qualifiers by @GabrielDosReis in #297
- Require CMake 3.24 and C++23 by @GabrielDosReis in #298
- Update builds to at least GCC-13 and Clang-15 by @GabrielDosReis in #299
- Add Windows-based CI status badge by @GabrielDosReis in #300
- Revert "Add Windows-based CI status badge" by @GabrielDosReis in #301
- Add
ipr::input::SourceFileby @GabrielDosReis in #307 - Resolve SA alert 4447 by @GabrielDosReis in #308
- Add
ipr::FunctionTraitsby @GabrielDosReis in #309 - Rename
ipr::Linkgagetoipr::Language_linkageby @GabrielDosReis in #310 - Add line range to
input::SourceFileby @GabrielDosReis in #311 SourceFile::linesshall be numbered by @GabrielDosReis in #312- Introduce
input::SourceListingby @GabrielDosReis in #313 - Splicing into entirely blank logical line by @GabrielDosReis in #314
- Classify preprocessing lines as they are read by @GabrielDosReis in #315
IsleandArchipelagoas implementation ofMorselby @GabrielDosReis in #316- Fix thinkos by @GabrielDosReis in #317
- Miscellaneous cleanup by @GabrielDosReis in #318
- Refactor CI workflow by @GabrielDosReis in #320
- Remove MSVC bug workaround by @GabrielDosReis in #319
- ci: upgrade to GCC 15, Clang 21, add macOS job and badges by @gdr-at-ms in #321
New Contributors
- @GorNishanov made their first contribution in #2
- @MathiasMagnus made their first contribution in #10
- @d-winsor made their first contribution in #29
- @Xazax-hun made their first contribution in #44
- @Nostracodus made their first contribution in #131
- @Codiferous made their first contribution in #174
- @davidhunter22 made their first contribution in #245
Full Changelog: https://github.com/GabrielDosReis/ipr/commits/2026.03