Releases: carbon-language/carbon-lang
Releases · carbon-language/carbon-lang
Nightly build 2024.12.11
What's Changed
Proposals accepted and merged 📜
- Proposal: Variadics by @geoffromer in #2240
Toolchain and implementation changes 🛠️
- Track complete types required by a generic. by @zygoloid in #4652
- Rename mutable accessor in
InstBlock
store. by @zygoloid in #4659 - Mark some //common, //toolchain/driver, //toolchain/install tests as small per 'Test execution time' warning by @bricknerb in #4646
- Rename various
TryToCompleteType
functions to better describe what they do. by @zygoloid in #4658 - Refactor single-unit checking out of check.cpp by @jonmeow in #4649
Utilities 📐
Infrastructure changes 🏗️
- Switch from recommending a local workspace extension to recommending our published extension. by @zygoloid in #4661
Full Changelog: v0.0.0-0.nightly.2024.12.10...v0.0.0-0.nightly.2024.12.11
Nightly build 2024.12.10
What's Changed
Toolchain and implementation changes 🛠️
- Disable modernize-use-trailing-return-type on MATCHER_P by @danakj in #4656
- Improve diagnostics for missing qualified names. by @zygoloid in #4638
Full Changelog: v0.0.0-0.nightly.2024.12.07...v0.0.0-0.nightly.2024.12.10
Nightly build 2024.12.09
What's Changed
Toolchain and implementation changes 🛠️
- When a builtin function expects type T also allow an adapter for T. by @zygoloid in #4643
- Fix crash in lowering use of a global variable by @dwblaikie in #4631
- Add an instruction for vptr initialization by @dwblaikie in #4633
- Remove offsets from InstId formatting, trying to name more by @jonmeow in #4645
- [NFC] Convert NameScope from struct to class by @bricknerb in #4623
- Add more tests of indexing a tuple with a non-literal by @josh11b in #4650
Full Changelog: v0.0.0-0.nightly.2024.12.06...v0.0.0-0.nightly.2024.12.09
Nightly build 2024.12.08
What's Changed
Toolchain and implementation changes 🛠️
- When a builtin function expects type T also allow an adapter for T. by @zygoloid in #4643
- Fix crash in lowering use of a global variable by @dwblaikie in #4631
- Add an instruction for vptr initialization by @dwblaikie in #4633
- Remove offsets from InstId formatting, trying to name more by @jonmeow in #4645
- [NFC] Convert NameScope from struct to class by @bricknerb in #4623
- Add more tests of indexing a tuple with a non-literal by @josh11b in #4650
Full Changelog: v0.0.0-0.nightly.2024.12.06...v0.0.0-0.nightly.2024.12.08
Nightly build 2024.12.07
What's Changed
Toolchain and implementation changes 🛠️
- When a builtin function expects type T also allow an adapter for T. by @zygoloid in #4643
- Fix crash in lowering use of a global variable by @dwblaikie in #4631
- Add an instruction for vptr initialization by @dwblaikie in #4633
- Remove offsets from InstId formatting, trying to name more by @jonmeow in #4645
- [NFC] Convert NameScope from struct to class by @bricknerb in #4623
- Add more tests of indexing a tuple with a non-literal by @josh11b in #4650
Full Changelog: v0.0.0-0.nightly.2024.12.06...v0.0.0-0.nightly.2024.12.07
Nightly build 2024.12.06
What's Changed
Toolchain and implementation changes 🛠️
- Remove InstId::Builtin members by @jonmeow in #4632
- In indirect_import_member test, make the alias avoid name poisoning by @bricknerb in #4635
- Change the IdBase operator== to fix reversed operator warnings by @jonmeow in #4636
- Convert unsupported qualifier test to be no_prelude. by @zygoloid in #4639
- Finish removing BuiltinInstKind by @jonmeow in #4637
- Remove some assumptions that the object representation for a type is that type itself. by @zygoloid in #4640
Documentation changes 📝
Infrastructure changes 🏗️
- Enable gdb_index unconditionally for gdb usage by @dwblaikie in #4642
Full Changelog: v0.0.0-0.nightly.2024.12.05...v0.0.0-0.nightly.2024.12.06
Nightly build 2024.12.05
What's Changed
Toolchain and implementation changes 🛠️
- Switch TypeId::TypeType to TypeType::SingletonTypeId, and similar by @jonmeow in #4619
- Include the file from which an entity was imported in formatted SemIR. by @zygoloid in #4621
- Fix bug introduced in #4613 by @josh11b in #4624
- Fix impl lookup to properly look in the IR containing a transitively-imported entity. by @zygoloid in #4625
- Filter out entities transitively imported from the prelude in test output. by @zygoloid in #4627
- Add a compile-time check that the condition of a CHECK is not constant. by @zygoloid in #4628
- Refactor IdBase to provide CRTP-based printing by @jonmeow in #4626
- Add missing library declarations to test. by @zygoloid in #4629
- Avoid relying on an implicit conversion in builtin lowering test. by @zygoloid in #4630
- Factor out common work of determining how inty a type is. by @zygoloid in #4634
Full Changelog: v0.0.0-0.nightly.2024.12.04...v0.0.0-0.nightly.2024.12.05
Nightly build 2024.12.04
What's Changed
Toolchain and implementation changes 🛠️
- Support for stringifying int values used as generic arguments. by @zygoloid in #4614
- Factor out machinery for forming int type literals. by @zygoloid in #4616
- Use a Timings* in place of optional* by @danakj in #4607
- Add framework for singleton instructions. by @jonmeow in #4582
- Remove Parse::Node, add ElementIndex in docs for typed insts by @danakj in #4604
- Add comments on the constants for BlockValueStore by @danakj in #4605
- Introduce AnyRawId as a polymorphic field type in typed instructions by @danakj in #4606
- More instructions get named by @josh11b in #4615
- Restrict the Cpp package name by @jonmeow in #4618
- Facet types support rewrite (
where .A =
...) constraints by @josh11b in #4613 - Remove return_slot_id by @geoffromer in #4577
Documentation changes 📝
Infrastructure changes 🏗️
- Switch from bazeliskrc to bazelversion by @jonmeow in #4612
- Enable libc++ hardening mode in opt builds by @danakj in #4609
Full Changelog: v0.0.0-0.nightly.2024.12.03...v0.0.0-0.nightly.2024.12.04
Nightly build 2024.12.03
What's Changed
Toolchain and implementation changes 🛠️
- Add a basic test for name poisoning by @bricknerb in #4572
- Fix impl lookup to look in the arguments of a specific. by @zygoloid in #4601
- Include the call arguments in the location of a call. by @zygoloid in #4602
- [NFC] In DeclNameStack::AddName(), use NameScope::AddRequired() instead of duplicating its logic by @bricknerb in #4610
- Expose InstKind::FromInt for Inst instead of InstKind::Make by @danakj in #4611
- CHECK that PreCheck and GetCheckUnit are not called twice by @danakj in #4608
Full Changelog: v0.0.0-0.nightly.2024.11.28...v0.0.0-0.nightly.2024.12.03
Nightly build 2024.12.02
What's Changed
Toolchain and implementation changes 🛠️
- Use a switch in StringifyTypeExpr by @danakj in #4598
- Add a test that verifies we prefer unqualified name lookup from a a non lexical scope over a lexical scope by @bricknerb in #4591
- Track the type as written in
BaseDecl
andAdaptDecl
. by @zygoloid in #4564 - Include the complete type witness for a class in its SemIR output. by @zygoloid in #4599
- Fix importing of the complete_type_witness for a generic class. by @zygoloid in #4600
Full Changelog: v0.0.0-0.nightly.2024.11.27...v0.0.0-0.nightly.2024.12.02