trunk
Support ranges with overloaded const/non-const begin and end. (#7627)
Change array syntax from [T; N] to array(T, N) (#4981)
Skip `ImplWitnessTable::elements_id` when generating fingerprints (#7629)
Create modules for header imports. (#7613)
Basic support for symbolic forms (#7408)
Implement thunking in terms of constant evaluation (#7332)
Don't require `ref` tags in thunks (#7115)
Switch Driver back to parameters for construction (#4849)
Diagnose missing interface definition in impl files (#7622)
Support for overriding virtual functions overloaded on arity. (#7438)
Implement `static var` class fields (#7215)
Avoid symbolic witnesses for `.Self` in an impl decl (#7564)
Find the current impl from accesses in a named constraint being implemented (#7592)
Destroy temporaries at the end of expression statements. (#7513)
Don't require non-class types to be complete to convert from them (#7590)
Move `self` to the explicit `()` parameter list (proposal #7016) (#7272)
Add well-known identifier caching (#6486)
Support LP64 platforms such as Darwin where `int64_t` is `long long`. (#7596)
CHECK that the self is a symbolic type when looking for a Destroy and its type is a facet (#7553)
Add support for enum comparisons and bitwise operators (#7356)
Replace `:!` binding syntax with phase keywords and contextual defaults (#7479)
Avoid impl lookup cycles from evaluating lookup instructions inside an impl decl (#7454)
Track pending thunks on the deferred definition worklist. (#5609)
Reimplement derived class thunk in terms of down-casting (#7322)
Fix handling of recursive macros. (#7593)
Drop "diagnostic" from some filenames in the "diagnostics" folder (#6686)
Introduce Diagnostics::ContextScope and remove diagnoser callbacks in type completion (#6761)
Rename `FacetTypeInfo` to `DeclaredFacetType` (#7528)
Have Specific track whether regions contain errors (#6982)
Replace form insts with actions (#7100)
Diagnose `where` in a binding that introduces a `.Self` that does not refer to the binding (#7517)
Emit `VarStorage`s eagerly (#7468)
Destroy locals at the end of blocks, not only on return (#7448)
Improve type substitution in ExportFunctionSpecializationToCpp (#7495)
Add an interface-with-self generic to each interface and same for constraints (#6667)
Look outside constant values for designators in `where` constraints (#7367)
Construct LocId from InstId directly (explicitly) instead of doing lookups when possible (#5355)
Parse `ref` as operator (#6539)
Remove `ValueBinding` and `RefBinding` (#7427)
Factor out definition merging logic. (#7154)
Rename check handlers to HandleParseNode overloads. (#4121)
Remove `InitForm::index` (#6817)
Add support for `inline Cpp` declarations. (#6994)
Rename type's GetInstId to GetTypeInstId, reflecting returned type (#6708)
Fix crash if initializing Clang fails. (#7248)
[parse] Implement initial parsing support for Lambda expressions (#6583)
Implement `Core.CharLiteral` operations from #6710 and #7314 (#7316)
Refactor `match` parse nodes. (#6870)
Connect impls to their containing `match_first` block (#7486)
Use earlier `require` decls inside a named constraint to provide witnesses for `Self` (#6915)
Fix cross-package signature mismatches. (#7232)
Abort checking when encountering an invalid parse node (#4700)
Implement checking observe declarations (#6709)
Fix accessing members of const/partial types (#7406)
Add initial support for parsing struct patterns (#7446)
Simplify struct literal pop loop. (#7158)
Use GetConstantValueInSpecific to get the impl's specific interface after deduction (#7584)
Anchor the orphan rule on the first owning declaration (#7573)
Add diagnostics for invalid impl declarations (#5420)
Add MakeVerifiedLocIdAndInst for runtime validation (#6942)
When performing an impl lookup, only import impls for related interfaces. (#6040)
Refactor InstBlockStore's API, AddDefaultValue -> AddPlaceholder (#5166)
Add require decls to Interface and NamedConstraint (#6321)
Handle import refs in TryGetExistingDecl (#7620)
Some more edits to EnumBase and EnumMaskBase (#6054)
Implement unused pattern bindings, continued (#6518)
Remove trailing `()` from `Core.*Literal` and `Core.Bool`. (#7313)
Add a `type_literal` instruction to represent syntactic type literals. (#6781)
Track and don't replace active `.Self` (#7443)
Fix a few proposal URLs (#7473)
Support unqualified lookup into extended interfaces from classes and impls (#7217)
Don't re-require complete types for extended scopes (#7194)
Diagnose explicit `Self` in extend in the parse node handler (Refactor Impl construction 1/7) (#6465)
Use lines instead of statements for readability-function-size clang-tidy (#6594)
Consolidate post-check logic (#5003)
Restructure handling of expressions in patterns (#7445)
Fix crash if an inst in a pending block needs a cleanup. (#7166)
Generate thunks for functions in `impl`s (#5390)
Support for parsing expression patterns (#6977)
Use `inline constexpr` where appropriate. (#6374)
Add SubstResult::SubstOperandsSkipType to not subst the type_id (#7452)
Add support for exporting Carbon functions as constructors. (#7560)
Correctly handle ImplWitnessAccess in impl lookup (#7181)
Search all facets in the impl lookup query for witnesses (#7178)
Clean up some of the TODOs in unused.carbon (#6794)