Releases: carbon-language/carbon-lang
Releases · carbon-language/carbon-lang
Nightly build 2025.02.22
What's Changed
Toolchain and implementation changes 🛠️
- Add LLD subcommand and busybox support by @chandlerc in #4973
- Use llvm::map_range() instead of using mapped_iterator directly by @danakj in #4997
Documentation changes 📝
Full Changelog: v0.0.0-0.nightly.2025.02.21...v0.0.0-0.nightly.2025.02.22
Nightly build 2025.02.21
What's Changed
Proposals accepted and merged 📜
Toolchain and implementation changes 🛠️
- Fix
NodeCategory
printing. by @zygoloid in #4983 - Reorder the token in a parse node to match its actual location. by @zygoloid in #4984
- Support tuple patterns outside parameter lists by @geoffromer in #4923
- Add and correct tests of impl lookup on generic interfaces by @danakj in #4974
- Should-fail tests using abstract tuples and structs by @josh11b in #4985
- Find the exe prior to busybox resolution by @jonmeow in #4993
- Tuples and structs with abstract types are abstract by @josh11b in #4986
- Change array syntax from [T; N] to array(T, N) by @danakj in #4981
- Make FacetTypeInfo and CompleteFacetType stores share id indices by @danakj in #4989
- Update pre-commit by @jonmeow in #4995
Documentation changes 📝
Infrastructure changes 🏗️
- Configure lldb to support /proc/self/cwd paths by @geoffromer in #4992
Full Changelog: v0.0.0-0.nightly.2025.02.20...v0.0.0-0.nightly.2025.02.21
Nightly build 2025.02.20
What's Changed
Toolchain and implementation changes 🛠️
- When diagnosing a duplicated name, add the name to the diagnosis by @bricknerb in #4902
- Make choice work for alternatives without parameters by @danakj in #4815
- Add enumerate() for ValueStore and ImplStore by @danakj in #4975
- Remove Context::DumpFormattedFile by @jonmeow in #4978
- Improve decl_name_stack comments by @jonmeow in #4977
- Avoid diagnosing conversion errors inside deduction of impl arguments by @danakj in #4976
- First iteration of completing and resolving facet types by @josh11b in #4920
- Remove FileTestBase::ValidateRun by @jonmeow in #4979
- Fix
clang
runner to avoid leaking memory by @chandlerc in #4972
Documentation changes 📝
- Document grammar of field and associated constant decls by @geoffromer in #4980
Full Changelog: v0.0.0-0.nightly.2025.02.19...v0.0.0-0.nightly.2025.02.20
Nightly build 2025.02.19
What's Changed
Toolchain and implementation changes 🛠️
- Move test file writing to our common testing
file_helpers
by @chandlerc in #4971 - Refactor FileTestBase to split logic between multiple files by @jonmeow in #4968
- Support conversion of facet-ish values for type deduction by @danakj in #4956
- Add and propagate template phase for constants. by @zygoloid in #4964
Full Changelog: v0.0.0-0.nightly.2025.02.17...v0.0.0-0.nightly.2025.02.19
Nightly build 2025.02.18
What's Changed
Toolchain and implementation changes 🛠️
- Refactor
stdout
andstderr
capturing to a library by @chandlerc in #4970
Full Changelog: v0.0.0-0.nightly.2025.02.16...v0.0.0-0.nightly.2025.02.18
Nightly build 2025.02.17
What's Changed
Toolchain and implementation changes 🛠️
- Refactor
stdout
andstderr
capturing to a library by @chandlerc in #4970
Full Changelog: v0.0.0-0.nightly.2025.02.16...v0.0.0-0.nightly.2025.02.17
Nightly build 2025.02.16
What's Changed
Toolchain and implementation changes 🛠️
- Remove obsolete '...' hints on node kind macros by @jonmeow in #4958
- Language Server - implement incremental document sync by @nirmal-j-patel in #4926
- Begin packaging builtin Clang headers by @chandlerc in #4959
Full Changelog: v0.0.0-0.nightly.2025.02.15...v0.0.0-0.nightly.2025.02.16
Nightly build 2025.02.15
What's Changed
Toolchain and implementation changes 🛠️
- Reduce clangd-displayed errors for def files by @jonmeow in #4957
- Add poisoned names to the format by @bricknerb in #4961
- When diagnosing a duplicate name, point to the name instead of the instruction by @bricknerb in #4953
- Allow checking to continue after 'impl as' outside class by @danakj in #4937
- Refactor AddInst-family functions to their own file by @jonmeow in #4941
- Add a test for the case that
extend
poisons a class member by @bricknerb in #4960 - Add the used name to the
NameUseBeforeDecl
diagnostic by @bricknerb in #4901 - Diagnose cycles in impl lookup by @danakj in #4947
- Publish empty diagnostics on close by @jonmeow in #4954
- Share ReadFile in tests by @jonmeow in #4967
- Clean up Context API by @jonmeow in #4969
Infrastructure changes 🏗️
- Update rules_cc to 0.1.1 by @DavidLoftus in #4965
- Allow pre-commit to talk to googleapis by @jonmeow in #4966
Full Changelog: v0.0.0-0.nightly.2025.02.14...v0.0.0-0.nightly.2025.02.15
Nightly build 2025.02.14
What's Changed
Toolchain and implementation changes 🛠️
- Superficial support for
template
modifier on symbolic bindings. by @zygoloid in #4948 - Move diagnostic helpers from Context to other files by @jonmeow in #4949
- Refactor implicit Self param into a member on SemIR::Function by @dwblaikie in #4928
- Avoid poisoning non identifier names by @bricknerb in #4884
- Move type functions off Context by @jonmeow in #4951
- Fix bad merge of comments introduced in #4884 by @bricknerb in #4955
Full Changelog: v0.0.0-0.nightly.2025.02.13...v0.0.0-0.nightly.2025.02.14
Nightly build 2025.02.13
What's Changed
Proposals accepted and merged 📜
- Safety milestones and a 2025 roadmap by @chandlerc in #4880
Toolchain and implementation changes 🛠️
- Generate Cpp namespace when import Cpp is used by @bricknerb in #4873
- Add a test where a FacetType is deduced as another FacetType by @danakj in #4917
- Use FacetAccessType when converting to a value of type FacetType by @danakj in #4925
- Improve comments on conversion from type value to type id by @danakj in #4885
- Don't use an impl when 'extend impl' is an error by @danakj in #4935
- Refactor subpattern logic out of Context by @jonmeow in #4929
- Change Context::IsImplFile to File::is_impl by @jonmeow in #4931
- Improve
match
parsing diagnostics by @czapiga in #4934 - Fold Context::GetCurrentScopeAs back into ScopeStack by @jonmeow in #4936
- When diagnosing poisoned name, point to the declared name instead of the entire declaration by @bricknerb in #4938
- Rename template constant -> concrete constant. by @zygoloid in #4939
- Refactor name lookup logic out of Context by @jonmeow in #4930
- Delete unused ParamPatternInfo::GetNameId by @jonmeow in #4942
- Avoid speculatively pushing a pattern block in impl handling by @geoffromer in #4943
Documentation changes 📝
Infrastructure changes 🏗️
- Register a vscode build task to save all files and run autoupdate. by @zygoloid in #4940
- Remove explorer from issue templates by @jonmeow in #4945
Full Changelog: v0.0.0-0.nightly.2025.02.12...v0.0.0-0.nightly.2025.02.13