This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch master in repository gcc.
from 99cbcd7c453 gccrs: Fix v0-mangle1.rs test when run with ASAN new 2438584da1f gccrs: Avoid accidental insertion into map new b168b618165 gccrs: Strong type PlaceId new f5e05755e91 gccrs: Strong type FreeRegion new e7a76ba9176 gccrs: Use FreeRegions inplace of `std::vector<FreeRegion>` new 9104447577a gccrs: Strong type LoanId new 03fd4851cd2 gccrs: Strong type ScopeId new 11b808ba788 gccrs: Strong type BasicBlockId new d91f1148d85 gccrs: Introduce `IndexVec` new 1113b8e0340 gccrs: Used `IndexVec` for Scopes new 7ec5d6bcbff gccrs: Used `IndexVec` for Loans new 139304f7791 gccrs: Used `IndexVec` for BasicBlocks new 2f8367e5811 gccrs: Used `IndexVec` for Places new 152ecf846f6 gccrs: Use `IndexVec` for bb_fold_map new b81a65f3cd6 gccrs: Used `IndexVec` for place_map new 8f4718f0b59 gccrs: Dynamic dispatch with supertraits new e620a86e4d7 gccrs: Implement initial pattern analysis pass. new 5aedc533153 gccrs: Emit error on auto-traits new da48816297d gccrs: session-manager: Fix typos in -frust-incomplete message new 5db515e5689 gccrs: [gccrs#3141] Fix incorrect handling of overflow in n [...] new 8ca55013c29 gccrs: [gccrs#3141] Remove double negation by returning Com [...] new 506459fac4e gccrs: Create new test system for name resolution 2.0 new a8bebc3bdd4 gccrs: Check if the type has been correctly resolved new 21e43d47d3f gccrs: Fix ICE on error propagation with generic new 1e387486fbe rust: negative polarity removes restrictions on validation [...] new f4abaf6ec15 gccrs: adjust hir dump of BlockExpr new 70228a4ba99 gccrs: Add extra assertions to tl::optional new 88524c53149 gccrs: Remove some overloaded methods from DefaultResolver. new d007ce87451 rust: fix ICE when compiling impl block for ! new 0581e0d9a8b gccrs: rust fix ICE when hir lowering qualified path expres [...] new 68af4878300 gccrs: nr2.0: default-visitor: Conditionally visit type in [...] new ca285a61c35 gccrs: toplevel: Add note for resolving use declarations new 8ed0cc70f73 gccrs: toplevel: Build list of imports for Early to resolve new 2f743673232 gccrs: early: Resolve imports and create import mappings new 333a4cbff7e gccrs: imports: Add FinalizeImports class new 4aab2ae2afe gccrs: imports: Create ImportData class and use it in impor [...] new 28fe1dac18b gccrs: imports: Start storing Ribs in ImportKind new 9047b32383a gccrs: imports: Make FinalizeImports a resolver visitor as well new 924446743f6 gccrs: early: Do not emit errors for unresolved imports, st [...] new 3118129c0c9 gccrs: Insert imports in all namespaces they were resolved in new 1f556f07163 gccrs: nr2.0: Cleanup import mappings and factor into a class. new 57dc3ab9739 gccrs: Fix missing error on duplicated nodes new 1ac4b59dee2 gccrs: Loop on expansion if a new export has been defined new dc4523e1265 gccrs: Mark virtual function override in default resolver new 38c5f0567f7 gccrs: Remove empty visit functions new f4b1922cfd1 gccrs: Remove regular visit code new 75a2b879385 gccrs: Change lambda content with default visitor call new 0da43a254cf gccrs: Add default resolver parent functions by default new 331ddca72d1 gccrs: Make AST default visitor visit functions public new 2aed733f113 gccrs: Move failing test to xfail new 7b906c48a2c gccrs: Move bir builder function implementation new 193b66070ef gccrs: Do not assert insertion result new a7992fee681 gccrs: Update exclude list with working tests new ad4c2360e39 gccrs: Change resolved type segment new fb7e607d2f7 gccrs: Make node id getter const. new 6f8ca7f2516 gccrs: This test requires the standard library new 141b2f9c7bb gccrs: Add box definition to avoid error new 712e92cb201 gccrs: Resolve TypeParam with name resolution 2.0 new ff388c8b1ca gccrs: Postpone break on error after name resolution new b2dcd3896d0 gccrs: Remove some passing test from nr2 passing list new 9b4f8f2d517 rust: Add support for Clone and Copy derive on generic types new 566ae2082c0 rust: fix ICE during name resolution for impls on unit-types new 5e416545361 gccrs: add test case to show impl block on ! works new ac582189005 gccrs: Add test case to show ICE is fixed new 308fd792af6 gccrs: Fix ICE when typechecking non-trait item when we expect one new 84f5e7b12e7 gccrs: Improve Rib::Definition shadowing new e71b4d671a7 gccrs: Fix some issues with canonical path fetching in name [...] new b05e174a347 gccrs: Handle TypeAlias during toplevel resolution 2.0 new b7f03bbd20d gccrs: Rework InlineAsmOperand new 0d88e726aa0 gccrs: Insert static items into the value namespace new 0ec5cb9985d gccrs: Improve handling of InlineAsm in DefaultASTVisitor new 1f1eeb5ac04 gccrs: Allow identifiers and paths to reference types during nr2.0 new 9753ae307b8 gccrs: Use name resolver 2.0 during pattern typechecking new 81397a9f534 gccrs: Provide input operand for gccrs new 064459884ac gccrs: Fix compiler error on ast wrong implicit construct p [...] new c7e00b1e875 gccrs: Disambiguate generic args during name resolution 2.0 new 225748e0f12 gccrs: Handle const generic parameters during resolution 2.0 new 2110efcc2a6 gccrs: Use name resolver 2.0 in MarkLive new e2aa4557b8f gccrs: Make const references to ForeverStack more useful new 48bde05f600 gccrs: Load unloaded modules during toplevel resolution 2.0 new 7e4a3039c24 gccrs: Use name resolver 2.0 in const checker new 15b1c031988 gccrs: Use name resolver 2.0 for compiling break/continue new a3049c8f050 gccrs: Use name resolver 2.0 in pattern checker new 8fc2bccec33 gccrs: Handle external static items in toplevel resolver 2.0
The 83 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: gcc/rust/Make-lang.in | 4 + gcc/rust/ast/rust-ast-builder-type.cc | 164 ++ gcc/rust/ast/rust-ast-builder-type.h | 57 + gcc/rust/ast/rust-ast-builder.cc | 201 ++- gcc/rust/ast/rust-ast-builder.h | 17 + gcc/rust/ast/rust-ast-visitor.cc | 41 +- gcc/rust/ast/rust-ast-visitor.h | 1 - gcc/rust/ast/rust-ast.h | 22 +- gcc/rust/ast/rust-expr.h | 183 ++- gcc/rust/ast/rust-item.h | 2 +- gcc/rust/ast/rust-path.h | 14 +- gcc/rust/ast/rust-type.h | 10 + gcc/rust/backend/rust-compile-asm.cc | 22 +- gcc/rust/backend/rust-compile-expr.cc | 107 +- gcc/rust/backend/rust-compile-item.cc | 19 +- gcc/rust/backend/rust-compile.cc | 128 +- .../errors/borrowck/rust-bir-builder-expr-stmt.cc | 5 +- .../errors/borrowck/rust-bir-builder-internal.h | 27 +- .../borrowck/rust-bir-builder-lazyboolexpr.h | 3 +- .../errors/borrowck/rust-bir-builder-pattern.cc | 273 ++++ .../errors/borrowck/rust-bir-builder-pattern.h | 260 +--- gcc/rust/checks/errors/borrowck/rust-bir-builder.h | 12 +- gcc/rust/checks/errors/borrowck/rust-bir-dump.cc | 75 +- gcc/rust/checks/errors/borrowck/rust-bir-dump.h | 4 +- .../errors/borrowck/rust-bir-fact-collector.h | 165 +- .../checks/errors/borrowck/rust-bir-free-region.h | 38 +- gcc/rust/checks/errors/borrowck/rust-bir-place.h | 151 +- gcc/rust/checks/errors/borrowck/rust-bir.h | 26 +- .../borrowck/rust-borrow-checker-diagnostics.cc | 6 +- gcc/rust/checks/errors/rust-const-checker.cc | 16 +- gcc/rust/checks/errors/rust-feature-gate.cc | 9 + gcc/rust/checks/errors/rust-feature-gate.h | 1 + gcc/rust/checks/errors/rust-feature.cc | 3 + .../checks/errors/rust-hir-pattern-analysis.cc | 1568 ++++++++++++++++++++ ...const-checker.h => rust-hir-pattern-analysis.h} | 418 +++++- gcc/rust/checks/lints/rust-lint-marklive.cc | 31 +- gcc/rust/expand/rust-derive-clone.cc | 88 +- gcc/rust/expand/rust-derive-clone.h | 5 +- gcc/rust/expand/rust-derive-copy.cc | 87 +- gcc/rust/expand/rust-derive-copy.h | 4 +- gcc/rust/expand/rust-macro-builtins-asm.cc | 13 +- gcc/rust/hir/rust-ast-lower-item.cc | 4 +- gcc/rust/hir/rust-ast-lower-type.cc | 11 +- gcc/rust/hir/rust-hir-dump.cc | 2 + gcc/rust/hir/tree/rust-hir-expr.h | 9 + gcc/rust/resolve/rust-ast-resolve-expr.cc | 7 + gcc/rust/resolve/rust-ast-resolve-expr.h | 2 + gcc/rust/resolve/rust-ast-resolve-pattern.cc | 3 +- gcc/rust/resolve/rust-ast-resolve-type.cc | 17 +- gcc/rust/resolve/rust-ast-resolve-type.h | 4 + gcc/rust/resolve/rust-default-resolver.cc | 550 +------ gcc/rust/resolve/rust-default-resolver.h | 124 +- gcc/rust/resolve/rust-early-name-resolver-2.0.cc | 123 +- gcc/rust/resolve/rust-early-name-resolver-2.0.h | 148 ++ gcc/rust/resolve/rust-finalize-imports-2.0.cc | 224 +++ gcc/rust/resolve/rust-finalize-imports-2.0.h | 110 ++ gcc/rust/resolve/rust-forever-stack.h | 31 +- gcc/rust/resolve/rust-forever-stack.hxx | 115 +- gcc/rust/resolve/rust-late-name-resolver-2.0.cc | 92 +- gcc/rust/resolve/rust-late-name-resolver-2.0.h | 3 + gcc/rust/resolve/rust-name-resolution-context.cc | 20 +- gcc/rust/resolve/rust-name-resolution-context.h | 6 +- gcc/rust/resolve/rust-name-resolver.cc | 9 +- gcc/rust/resolve/rust-name-resolver.h | 7 +- gcc/rust/resolve/rust-rib.cc | 107 +- gcc/rust/resolve/rust-rib.h | 32 +- .../resolve/rust-toplevel-name-resolver-2.0.cc | 367 +---- gcc/rust/resolve/rust-toplevel-name-resolver-2.0.h | 134 +- gcc/rust/rust-session-manager.cc | 24 +- gcc/rust/typecheck/rust-hir-trait-resolve.cc | 27 +- gcc/rust/typecheck/rust-hir-type-check-enumitem.cc | 80 +- gcc/rust/typecheck/rust-hir-type-check-implitem.cc | 23 +- gcc/rust/typecheck/rust-hir-type-check-item.cc | 65 +- gcc/rust/typecheck/rust-hir-type-check-item.h | 3 +- gcc/rust/typecheck/rust-hir-type-check-pattern.cc | 32 +- .../rust-tyty-variance-analysis-private.h | 11 +- gcc/rust/typecheck/rust-tyty-variance-analysis.cc | 8 +- gcc/rust/typecheck/rust-tyty-variance-analysis.h | 7 +- gcc/rust/typecheck/rust-tyty.cc | 2 +- gcc/rust/util/optional.h | 86 +- gcc/testsuite/rust/compile/auto_trait.rs | 1 + .../rust/compile/auto_trait_super_trait.rs | 1 + .../rust/compile/box_syntax_feature_gate.rs | 2 + gcc/testsuite/rust/compile/exhaustiveness1.rs | 53 + gcc/testsuite/rust/compile/exhaustiveness2.rs | 28 + gcc/testsuite/rust/compile/exhaustiveness3.rs | 55 + .../rust/compile/functions_without_body.rs | 1 + gcc/testsuite/rust/compile/generic_auto_trait.rs | 1 + .../rust/compile/inline_asm_parse_operand.rs | 6 +- gcc/testsuite/rust/compile/issue-2203.rs | 3 + gcc/testsuite/rust/compile/issue-2499.rs | 11 + gcc/testsuite/rust/compile/issue-2951.rs | 13 + gcc/testsuite/rust/compile/issue-3030.rs | 16 + gcc/testsuite/rust/compile/issue-3035.rs | 25 + gcc/testsuite/rust/compile/issue-3036.rs | 14 + gcc/testsuite/rust/compile/issue-3082.rs | 9 + gcc/testsuite/rust/compile/issue-3139-1.rs | 45 + gcc/testsuite/rust/compile/issue-3139-2.rs | 57 + gcc/testsuite/rust/compile/issue-3139-3.rs | 32 + gcc/testsuite/rust/compile/issue-3141.rs | 62 + gcc/testsuite/rust/compile/nr2/compile.exp | 136 ++ gcc/testsuite/rust/compile/nr2/exclude | 237 +++ gcc/testsuite/rust/compile/trait13.rs | 47 + gcc/testsuite/rust/compile/trait14.rs | 51 + .../rust/compile/{ => xfail}/name_resolution21.rs | 3 +- .../rust/execute/torture/inline_asm_mov_x_5_ARM.rs | 14 +- .../execute/torture/inline_asm_mov_x_5_x86_64.rs | 19 +- gcc/testsuite/rust/execute/torture/trait14.rs | 47 + gcc/testsuite/rust/execute/torture/trait15.rs | 56 + gcc/testsuite/rust/execute/torture/trait16.rs | 52 + gcc/testsuite/rust/execute/torture/trait17.rs | 54 + gcc/testsuite/rust/execute/torture/trait18.rs | 56 + 112 files changed, 6348 insertions(+), 1768 deletions(-) create mode 100644 gcc/rust/ast/rust-ast-builder-type.cc create mode 100644 gcc/rust/ast/rust-ast-builder-type.h create mode 100644 gcc/rust/checks/errors/borrowck/rust-bir-builder-pattern.cc create mode 100644 gcc/rust/checks/errors/rust-hir-pattern-analysis.cc copy gcc/rust/checks/errors/{rust-const-checker.h => rust-hir-pattern-analysis.h} (50%) create mode 100644 gcc/rust/resolve/rust-finalize-imports-2.0.cc create mode 100644 gcc/rust/resolve/rust-finalize-imports-2.0.h create mode 100644 gcc/testsuite/rust/compile/auto_trait.rs create mode 100644 gcc/testsuite/rust/compile/exhaustiveness1.rs create mode 100644 gcc/testsuite/rust/compile/exhaustiveness2.rs create mode 100644 gcc/testsuite/rust/compile/exhaustiveness3.rs create mode 100644 gcc/testsuite/rust/compile/issue-2203.rs create mode 100644 gcc/testsuite/rust/compile/issue-2499.rs create mode 100644 gcc/testsuite/rust/compile/issue-2951.rs create mode 100644 gcc/testsuite/rust/compile/issue-3030.rs create mode 100644 gcc/testsuite/rust/compile/issue-3035.rs create mode 100644 gcc/testsuite/rust/compile/issue-3036.rs create mode 100644 gcc/testsuite/rust/compile/issue-3082.rs create mode 100644 gcc/testsuite/rust/compile/issue-3139-1.rs create mode 100644 gcc/testsuite/rust/compile/issue-3139-2.rs create mode 100644 gcc/testsuite/rust/compile/issue-3139-3.rs create mode 100644 gcc/testsuite/rust/compile/issue-3141.rs create mode 100644 gcc/testsuite/rust/compile/nr2/compile.exp create mode 100644 gcc/testsuite/rust/compile/nr2/exclude create mode 100644 gcc/testsuite/rust/compile/trait13.rs create mode 100644 gcc/testsuite/rust/compile/trait14.rs rename gcc/testsuite/rust/compile/{ => xfail}/name_resolution21.rs (62%) create mode 100644 gcc/testsuite/rust/execute/torture/trait14.rs create mode 100644 gcc/testsuite/rust/execute/torture/trait15.rs create mode 100644 gcc/testsuite/rust/execute/torture/trait16.rs create mode 100644 gcc/testsuite/rust/execute/torture/trait17.rs create mode 100644 gcc/testsuite/rust/execute/torture/trait18.rs