This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch master in repository gcc.
from df7f3413385 gccrs: Track associated type generics new 8ae7e93d60c gccrs: fix how we handle coercions and casts of unsafe pointers new b8f4ad50394 gccrs: Improve macro repetition handling new 09777a69afc gccrs: refactored field error function new eebe4063c1a gccrs: fix lexing byte literal new e6c44bae4e3 gccrs: parser: Propagate type hint value new fae1e3bcef1 gccrs: abi: Add testcase for using "Rust" as ABI string new 96065850ce7 gccrs: cleanup getters to return &unique_ptr instead of pointer new 16510f1c74d gccrs: factor out inner attributes in a class new 0cecd827890 gccrs: FullVisitable abstract class new 0ee496d5dc1 gccrs: Add new getters new 11fbade5850 gccrs: refactor: make crate.items private new 3913845305f gccrs: [E0027] struct pattern fails to specify struct's fields new 90f6b7b56b0 gccrs: fix ICE with inserting autoderef mappings new 68c4066e1af gccrs: Track fn_once output lang item properly new f1cec858343 gccrs: Remove unnecessary methods of `Rust::Lexer` new 9499b41f40f gccrs: minor HIR interface cleanup new c34f50643da gccrs: [E0229] associated type bindings error new 57c7cc6abf4 gccrs: [E0034] Ambiguous Method Call Error new d10dbce142d gccrs: HIR cleanup new d8a697a658e gccrs: Change class Location into typedef new 1c3a8fbb178 gccrs: Add location info to `Rust::Identifier` new 590352852f0 gccrs: gccrs:[E0046] Missing Items in Trait Implementation new ba06fbcf5d5 gccrs: Ignore semicolon following a macro expansion in expr [...] new 43115ccccc8 gccrs: add utf-8 validation for input source new efa319175a0 gccrs: [E0063] constructor is missing fields new 2a53f37997e gccrs: [E0053] method 'x' has an incompatible type for trait 'y' new fc0aa04839e gccrs: Reduce Linemap/Gcc_linemap abstraction new f34d65dde65 gccrs: [E0425] Use of unresolved name new 05ef8df6827 gccrs: Reduce Linemap/Gcc_linemap abstraction further new 1ecba694eef gccrs: Create MacroInvocLexerBase new 67d50818a7f gccrs: collector: Fix some token collector new b8ce0e28a01 gccrs: dump: Fix spacing with dots and references new ac88cb00f73 gccrs: collector: Fix method self parameter new 33db2ab9741 gccrs: collector: Fix output for function qualifiers new 005e4febac0 gccrs: collector: Fix doubled generics new 1083826a89e gccrs: collector: Fix trait impl block new af07e6032f6 gccrs: collector: Change match arm format new 3b58924a75c gccrs: dump: Fix dollar spacing rule new be6fd5da684 gccrs: collector: Add generic to inherent impl block new 92d1a96ddec gccrs: collector: Reformat trait impl new 85201f34877 gccrs: collector: Fix missing trait generics new 06594902eb7 gccrs: collector: Add generics to external functions new d862c1bbcf4 gccrs: collector: Add variadics to collector output new 032b5f90f2d gccrs: collector: Output outer attributes on blockexpr new 5672275c701 gccrs: collector: Add where clause to trait impl block new 2420506ddf8 gccrs: collector: Fix method qualifier output new ce1ca503d2b gccrs: collector: Output extern function attributes new 5c9b490bc28 gccrs: collector: Fix remaining trait & extern issues new 030786a9680 gccrs: collector: Fix abi output new 1678cdd3aac gccrs: Replace value initialization of Location with UNDEF_ [...] new c3d5d8bee12 gccrs: optional: Import tl's optional type new 894f558c6e3 gccrs: optional: Adapt class to GCC's standards. new 6e2ed1e1efb gccrs: util: Add tl::expected type new 57806868213 gccrs: expected: Adapt type to GCC's requirements. new 1213bb4686c gccrs: nr2.0: Add complex testcases new 8ab098a790f gccrs: [E0061] Refactored argument mismatch error function new c84a5c616cd gccrs: [E0070] invalid left-hand side of assignment new e5f3ad0fa19 gccrs: Replace Linemap::unknown_location with UNKNOWN_LOCATION new 4e71511a676 gccrs: Remove Rust::Optional in favor of tl::optional new 7b6c52cf4ef gccrs: Merge Gcc_linemap into Linemap new f9b0ca04c88 gccrs: Add rust_error_at accepting location_t and ErrorCode new 9c99d52d00a gccrs: [E0124] field x is already declared in struct new c12f4bc804a gccrs: minor HIR cleanup new e659eca9f3b gccrs: Merge Linemap::to_string into Linemap::location_to_string new 805cb985847 gccrs: Remove unnecessary usage of Location copy constructor new a229fcbf656 gccrs: Change specifier of some forward declaration new 8b089cb58ad gccrs: Add missing virtual destructor to interfaces new 686653b1220 gccrs: remove braces around scalar initializers new ded9de82c10 gccrs: minor HIR cleanup new 0830ce0813e gccrs: dump: Output escaped character values new 75763b4c50e gccrs: Remove Linemap::get_location new eb241224a9f gccrs: Change class RichLocation into typedef new fc91e2b3c68 gccrs: Remove Linemap::start_line new ffadba42b30 gccrs: Remove RichLocation typedef new 0da798e3666 gccrs: [E0133] Use of unsafe code outside of unsafe functio [...] new af1a05fb37e gccrs: [E0093] Declaration of unknown intrinsic function new 600d78c65ad gccrs: [E0658] Use of unstable feature new 93866b6a930 gccrs: rust-unreachable: Add specific behavior for rust_unr [...] new 2e159d9d0c0 gccrs: Add include guard for rust-gcc.h new 087ed58311d gccrs: Remove Linemap::predeclared_location new 23aa4bd6c27 gccrs: [E0423] expected function, tuple struct or tuple var [...] new ad14f866184 gccrs: Move some Gcc_backend method definitions out of clas [...] new d991a3f15f6 gccrs: Replace some usages of Location with location_t new df1da36415b gccrs: Replace some more usages of Location with location_t new 8288dc0fedc gccrs: nr2.0: Add basic Rib class new bcd76dbcaab gccrs: rework the HIR dump pass new 2327631e4ba gccrs: nr2.0: Add `ForeverStack` data structure. new dcba437a822 gccrs: cli: Add frust-type option new bee12555414 gccrs: proc_macro: Add from string implementation new f7af0b90ef4 gccrs: libproc_macro: Change Ident structure new 43208b6cbab gccrs: libproc_macro: Change rust Ident definition new 6bed91c311e gccrs: proc macros: Add crate type attribute check new 1b1f8d89885 gccrs: proc macro: Detect malformed proc_macro_derive new 9a99feab7cb gccrs: proc macro: Add help message to malformed derive new ad4c18174bb gccrs: proc macro: Add crate type regression tests new dbe2f8ad4db gccrs: Add a test for malformed derive declaration input new f67f840d291 gccrs: [E0268] break or continue used outside of loop new 1ed62a2be74 gccrs: Replace Location with location_t in gccrs backend new 7e74b450d24 gccrs: Replace default argument with UNDEF_LOCATION new e3360d2ba20 gccrs: import: Add cli extern crate resolution new d31b401c8cd gccrs: import: Change package opening prototypes new cfb98788f0a gccrs: import: Store procedural macros in extern crate new dd73caa394b gccrs: import: Change raw pointer to unique_ptr new 37451ad09f7 gccrs: import: Load procedural macros into external crate new 4d5f20fdbf0 gccrs: resolve: Add extern crate proc macro collection new 5920e4b7579 gccrs: ast: Add manual dispatch for meta item downcasting new 00f79c773bc gccrs: attribute: Add missing header guard new ed866110ef0 gccrs: resolve: Add mappings for proc macros and resolving new 987a411d409 gccrs: resolve: Convert identifier to a SimplePath new 865efbdc2f1 gccrs: resolve: Remove ProcMacroInvocable interface new d686ffaf26b gccrs: Improve keyword check while parsing a macro match new 80c68893f44 gccrs: Replace Location with location_t in parsing and macr [...] new e99e565e0aa gccrs: Replace usages of Location with location_t in the le [...] new dd15fff3856 gccrs: Continue to replace usages of Location with location_t new f00f3837ef1 gccrs: proc_macro: Increase FFIString usage new 973f4088efa gccrs: proc_macro: Mirror FFIString changes in C++library new 5141707b5b5 gccrs: [E0323] Implemented associated const, expected anoth [...] new da58dc1a33d gccrs: [E0045] Variadic Parameters Used on Non-C ABI Function new 6050e07157e gccrs: Remove NodeId member from Identifier new cd90ba84e17 gccrs: Emit error with proc macro on non functions new f02f9672a57 gccrs: Add tests for non function proc_macro attributes new 3c1cc1190a2 gccrs: Add tests for non function proc_macro_attribute new e58650e6df3 gccrs: Add tests for non function proc_macro_derive new e615b4fa5f3 gccrs: proc macro: Add privacy check new 1a02c452a64 gccrs: privacy: Add tests for private proc macro error new de83e69bb6e gccrs: testsuite: Replace dg-excess-errors with dg-error new 6ad3f1fa575 gccrs: testsuite: Add tests for pub items in proc_macros new 1346a7652e8 gccrs: privacy: Refactor proc macro privacy check new de7e34bdd6c gccrs: proc_macro: Refactor attribute search new b190aaeff7b gccrs: proc_macro: Rename from_string callback symbol new c0763eac05f gccrs: proc_macro: Add is_available callback new ce09474789d gccrs: proc_macro: Add is_available function new 8db58652d87 gccrs: proc_macro: Remode function indirection new ea0bd46eb86 gccrs: proc_macro: Delete unused prototype new 6e5d6c3f0e8 gccrs: proc_macro: Remove useless typedef new 96e4e5d27ec gccrs: Replace Location with location_t in unnamed function [...] new b05d874fc52 gccrs: Check proc_macro attributes on non root functions new ce7f0df47e8 gccrs: Add multiple tests for non root proc macro new 55f8b63ab39 gccrs: New Error Code Framework new 6d1adb5c393 gccrs: Move callbacked function in a new namespace new ff773b9030e gccrs: converter: Move literal conversion out new 0680907b3b1 gccrs: proc_macro: Add literal_from_string callback new 55a30495254 gccrs: [E0571] break with argument in non-loop loop new 9cc353d75ab gccrs: Replace usages of Location with location_t in typechecking new 886d56d0c54 gccrs: Remove Location typedef new fa13cfd08af gccrs: error codes: Add rust_error_codes.def, refactor Erro [...] new 4d630984512 gccrs: Add function for Unicode NFC normalization new 46a5df00ab5 gccrs: fix ICE when we have unimplemented/invalid trait items new 2b00b13d309 gccrs: Move Gcc_backend declaration to header file new c533a11ae05 gccrs: Track trait bound polarity properly new f84d52a5173 gccrs: Track polarity in type bound predicate new 6164ec07c64 gccrs: Begin enforcing Sized properly and support anti trai [...] new 0610584d0d0 gccrs: fix ice when function is outside of context new 884dec3a424 gccrs: Add missing CHECKING_P guard to rust-unicode.cc new f7b2e17682b gccrs: Add Unicode check for crate_name attributes new 432cdee6a6e gccrs: Fix ICE by adding check for enum candidate's in Type [...] new 58b49a65a3f gccrs: use tl::optional for macro transcribers new c016d443b81 gccrs: Use MacroInvocLexerBase in MacroInvocLexer new 47576fa5a86 gccrs: [E0572] return is outside of function context new 79df2b3cafa gccrs: name resolution 2.0: Add base for our context data s [...]
The 160 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.h | 4 +- gcc/rust/ast/rust-ast-collector.cc | 585 +-- gcc/rust/ast/rust-ast-collector.h | 2 +- gcc/rust/ast/rust-ast-dump.cc | 6 +- gcc/rust/ast/rust-ast-dump.h | 2 +- gcc/rust/ast/rust-ast-formatting.cc | 4 +- gcc/rust/ast/rust-ast-fragment.cc | 10 +- gcc/rust/ast/rust-ast-fragment.h | 13 + gcc/rust/ast/rust-ast.cc | 25 +- gcc/rust/ast/rust-ast.h | 140 +- gcc/rust/ast/rust-expr.h | 291 +- gcc/rust/ast/rust-item.h | 249 +- gcc/rust/ast/rust-macro.h | 170 +- gcc/rust/ast/rust-path.cc | 2 +- gcc/rust/ast/rust-path.h | 119 +- gcc/rust/ast/rust-pattern.h | 101 +- gcc/rust/ast/rust-stmt.h | 18 +- gcc/rust/ast/rust-type.h | 95 +- gcc/rust/backend/rust-compile-base.cc | 46 +- gcc/rust/backend/rust-compile-base.h | 48 +- gcc/rust/backend/rust-compile-block.cc | 27 +- gcc/rust/backend/rust-compile-expr.cc | 138 +- gcc/rust/backend/rust-compile-expr.h | 13 +- gcc/rust/backend/rust-compile-extern.h | 7 +- gcc/rust/backend/rust-compile-fnparam.cc | 8 +- gcc/rust/backend/rust-compile-fnparam.h | 10 +- gcc/rust/backend/rust-compile-implitem.h | 11 +- gcc/rust/backend/rust-compile-intrinsic.cc | 129 +- gcc/rust/backend/rust-compile-item.cc | 4 +- gcc/rust/backend/rust-compile-item.h | 6 +- gcc/rust/backend/rust-compile-pattern.cc | 10 +- gcc/rust/backend/rust-compile-pattern.h | 6 +- gcc/rust/backend/rust-compile-resolve-path.cc | 4 +- gcc/rust/backend/rust-compile-resolve-path.h | 2 +- gcc/rust/backend/rust-compile-stmt.cc | 8 +- gcc/rust/backend/rust-compile-struct-field-expr.cc | 4 +- gcc/rust/backend/rust-compile-type.cc | 49 +- gcc/rust/backend/rust-compile.cc | 23 +- gcc/rust/backend/rust-constexpr.cc | 33 +- gcc/rust/backend/rust-mangle.cc | 8 +- gcc/rust/backend/rust-tree.cc | 22 +- gcc/rust/backend/rust-tree.h | 4 +- .../checks/errors/privacy/rust-privacy-check.cc | 4 +- .../checks/errors/privacy/rust-privacy-reporter.cc | 85 +- .../checks/errors/privacy/rust-privacy-reporter.h | 6 +- .../errors/privacy/rust-pub-restricted-visitor.cc | 4 +- .../errors/privacy/rust-pub-restricted-visitor.h | 2 +- .../errors/privacy/rust-visibility-resolver.cc | 6 +- gcc/rust/checks/errors/rust-const-checker.cc | 11 +- gcc/rust/checks/errors/rust-const-checker.h | 2 +- gcc/rust/checks/errors/rust-feature-gate.cc | 10 +- gcc/rust/checks/errors/rust-feature-gate.h | 2 +- gcc/rust/checks/errors/rust-feature.cc | 24 +- gcc/rust/checks/errors/rust-feature.h | 8 +- gcc/rust/checks/errors/rust-unsafe-checker.cc | 26 +- gcc/rust/checks/errors/rust-unsafe-checker.h | 6 +- gcc/rust/checks/lints/rust-lint-marklive.cc | 6 +- gcc/rust/checks/lints/rust-lint-scan-deadcode.h | 11 +- gcc/rust/expand/rust-derive-clone.cc | 2 +- gcc/rust/expand/rust-derive-clone.h | 2 +- gcc/rust/expand/rust-derive-copy.cc | 3 +- gcc/rust/expand/rust-derive-copy.h | 2 +- gcc/rust/expand/rust-derive.cc | 2 +- gcc/rust/expand/rust-derive.h | 4 +- gcc/rust/expand/rust-expand-visitor.cc | 97 +- gcc/rust/expand/rust-macro-builtins.cc | 88 +- gcc/rust/expand/rust-macro-builtins.h | 57 +- gcc/rust/expand/rust-macro-expand.cc | 104 +- gcc/rust/expand/rust-macro-expand.h | 100 +- gcc/rust/expand/rust-macro-invoc-lexer.cc | 9 +- gcc/rust/expand/rust-macro-invoc-lexer.h | 46 +- gcc/rust/expand/rust-macro-substitute-ctx.cc | 2 +- gcc/rust/expand/rust-proc-macro-invoc-lexer.cc | 2 +- gcc/rust/expand/rust-proc-macro-invoc-lexer.h | 2 +- gcc/rust/expand/rust-proc-macro.cc | 99 +- gcc/rust/hir/rust-ast-lower-base.cc | 8 +- gcc/rust/hir/rust-ast-lower-base.h | 4 +- gcc/rust/hir/rust-ast-lower-expr.cc | 2 +- gcc/rust/hir/rust-ast-lower-implitem.h | 4 +- gcc/rust/hir/rust-ast-lower-item.cc | 8 +- gcc/rust/hir/rust-ast-lower-pattern.cc | 4 +- gcc/rust/hir/rust-ast-lower-type.cc | 8 +- gcc/rust/hir/rust-hir-dump.cc | 2819 +++++++++-- gcc/rust/hir/rust-hir-dump.h | 63 + gcc/rust/hir/tree/rust-hir-expr.h | 450 +- gcc/rust/hir/tree/rust-hir-full-decls.h | 8 +- gcc/rust/hir/tree/rust-hir-item.h | 354 +- gcc/rust/hir/tree/rust-hir-path.h | 94 +- gcc/rust/hir/tree/rust-hir-pattern.h | 111 +- gcc/rust/hir/tree/rust-hir-stmt.h | 34 +- gcc/rust/hir/tree/rust-hir-type.h | 82 +- gcc/rust/hir/tree/rust-hir.cc | 58 +- gcc/rust/hir/tree/rust-hir.h | 136 +- gcc/rust/lang.opt | 28 + gcc/rust/lex/rust-codepoint.h | 2 + gcc/rust/lex/rust-lex.cc | 203 +- gcc/rust/lex/rust-lex.h | 63 +- gcc/rust/lex/rust-token.cc | 54 +- gcc/rust/lex/rust-token.h | 38 +- gcc/rust/metadata/rust-export-metadata.cc | 23 +- gcc/rust/metadata/rust-extern-crate.cc | 9 +- gcc/rust/metadata/rust-extern-crate.h | 10 +- gcc/rust/metadata/rust-import-archive.cc | 39 +- gcc/rust/metadata/rust-imports.cc | 76 +- gcc/rust/metadata/rust-imports.h | 36 +- gcc/rust/parse/rust-cfg-parser.cc | 2 +- gcc/rust/parse/rust-parse-impl.h | 549 +-- gcc/rust/parse/rust-parse.cc | 6 +- gcc/rust/parse/rust-parse.h | 45 +- gcc/rust/resolve/rust-ast-resolve-expr.cc | 11 +- gcc/rust/resolve/rust-ast-resolve-implitem.h | 40 +- gcc/rust/resolve/rust-ast-resolve-item.cc | 50 +- gcc/rust/resolve/rust-ast-resolve-path.cc | 16 +- gcc/rust/resolve/rust-ast-resolve-path.h | 2 +- gcc/rust/resolve/rust-ast-resolve-pattern.cc | 12 +- gcc/rust/resolve/rust-ast-resolve-pattern.h | 6 +- gcc/rust/resolve/rust-ast-resolve-stmt.h | 40 +- gcc/rust/resolve/rust-ast-resolve-toplevel.h | 64 +- gcc/rust/resolve/rust-ast-resolve-type.cc | 14 +- gcc/rust/resolve/rust-ast-resolve-type.h | 2 +- gcc/rust/resolve/rust-ast-resolve.cc | 2 +- gcc/rust/resolve/rust-ast-verify-assignee.h | 2 +- gcc/rust/resolve/rust-forever-stack.h | 533 ++ gcc/rust/resolve/rust-forever-stack.hxx | 249 + gcc/rust/resolve/rust-name-resolution-context.cc | 93 + gcc/rust/resolve/rust-name-resolution-context.h | 181 + gcc/rust/resolve/rust-name-resolver.cc | 30 +- gcc/rust/resolve/rust-name-resolver.h | 18 +- gcc/rust/resolve/rust-rib.cc | 70 + gcc/rust/resolve/rust-rib.h | 135 + gcc/rust/rust-backend.h | 308 +- gcc/rust/rust-diagnostics.cc | 116 +- gcc/rust/rust-diagnostics.h | 88 +- gcc/rust/rust-gcc.cc | 520 +- gcc/rust/rust-gcc.h | 7 +- gcc/rust/rust-lang.cc | 15 +- gcc/rust/rust-linemap.cc | 169 +- gcc/rust/rust-linemap.h | 112 +- gcc/rust/rust-location.h | 78 +- gcc/rust/rust-session-manager.cc | 172 +- gcc/rust/rust-session-manager.h | 79 +- gcc/rust/rust-system.h | 9 +- gcc/rust/rust_error_codes.def | 506 ++ gcc/rust/typecheck/rust-autoderef.cc | 4 +- gcc/rust/typecheck/rust-autoderef.h | 2 +- gcc/rust/typecheck/rust-casts.cc | 14 +- gcc/rust/typecheck/rust-casts.h | 9 +- gcc/rust/typecheck/rust-coercion.cc | 91 +- gcc/rust/typecheck/rust-coercion.h | 25 +- gcc/rust/typecheck/rust-hir-dot-operator.cc | 22 +- .../typecheck/rust-hir-inherent-impl-overlap.h | 2 +- gcc/rust/typecheck/rust-hir-path-probe.cc | 16 +- gcc/rust/typecheck/rust-hir-path-probe.h | 16 +- gcc/rust/typecheck/rust-hir-trait-reference.cc | 12 +- gcc/rust/typecheck/rust-hir-trait-reference.h | 12 +- gcc/rust/typecheck/rust-hir-trait-resolve.cc | 37 +- gcc/rust/typecheck/rust-hir-type-check-base.cc | 27 +- gcc/rust/typecheck/rust-hir-type-check-base.h | 12 +- gcc/rust/typecheck/rust-hir-type-check-expr.cc | 111 +- gcc/rust/typecheck/rust-hir-type-check-expr.h | 14 +- gcc/rust/typecheck/rust-hir-type-check-implitem.cc | 55 +- gcc/rust/typecheck/rust-hir-type-check-item.cc | 37 +- gcc/rust/typecheck/rust-hir-type-check-item.h | 2 +- gcc/rust/typecheck/rust-hir-type-check-path.cc | 6 +- gcc/rust/typecheck/rust-hir-type-check-pattern.cc | 36 +- gcc/rust/typecheck/rust-hir-type-check-pattern.h | 2 +- gcc/rust/typecheck/rust-hir-type-check-stmt.cc | 15 +- gcc/rust/typecheck/rust-hir-type-check-stmt.h | 2 +- gcc/rust/typecheck/rust-hir-type-check-struct.cc | 12 +- gcc/rust/typecheck/rust-hir-type-check-type.cc | 103 +- gcc/rust/typecheck/rust-hir-type-check-type.h | 12 +- gcc/rust/typecheck/rust-hir-type-check.cc | 19 +- gcc/rust/typecheck/rust-hir-type-check.h | 2 +- gcc/rust/typecheck/rust-substitution-mapper.cc | 7 +- gcc/rust/typecheck/rust-substitution-mapper.h | 90 +- gcc/rust/typecheck/rust-type-util.cc | 14 +- gcc/rust/typecheck/rust-type-util.h | 12 +- gcc/rust/typecheck/rust-typecheck-context.cc | 7 +- gcc/rust/typecheck/rust-tyty-bounds.cc | 98 +- gcc/rust/typecheck/rust-tyty-bounds.h | 2 +- gcc/rust/typecheck/rust-tyty-call.cc | 106 +- gcc/rust/typecheck/rust-tyty-call.h | 60 +- gcc/rust/typecheck/rust-tyty-cmp.h | 140 +- gcc/rust/typecheck/rust-tyty-subst.cc | 27 +- gcc/rust/typecheck/rust-tyty-subst.h | 12 +- gcc/rust/typecheck/rust-tyty-util.cc | 4 +- gcc/rust/typecheck/rust-tyty-util.h | 8 +- gcc/rust/typecheck/rust-tyty.cc | 134 +- gcc/rust/typecheck/rust-tyty.h | 54 +- gcc/rust/typecheck/rust-unify.cc | 10 +- gcc/rust/typecheck/rust-unify.h | 6 +- gcc/rust/util/expected.h | 2440 +++++++++ gcc/rust/util/make-rust-unicode.py | 289 ++ gcc/rust/util/optional.h | 2059 ++++++++ gcc/rust/util/rust-attributes.cc | 208 +- gcc/rust/util/rust-attributes.h | 4 + gcc/rust/util/rust-common.h | 23 +- gcc/rust/util/rust-hir-map.cc | 233 +- gcc/rust/util/rust-hir-map.h | 93 +- gcc/rust/util/rust-identifier.h | 4 +- gcc/rust/util/rust-optional-test.cc | 110 - gcc/rust/util/rust-optional.h | 288 -- gcc/rust/util/rust-token-converter.cc | 82 +- gcc/rust/util/rust-token-converter.h | 3 + gcc/rust/util/rust-unicode-data.h | 5208 ++++++++++++++++++++ gcc/rust/util/rust-unicode.cc | 317 ++ .../rust-derive-copy.h => util/rust-unicode.h} | 67 +- gcc/testsuite/rust/compile/abi-vardaic.rs | 7 + .../{bad-crate-name.rs => bad-crate-name1.rs} | 0 gcc/testsuite/rust/compile/bad-crate-name2.rs | 2 + gcc/testsuite/rust/compile/bad_pub_enumitems.rs | 4 +- gcc/testsuite/rust/compile/bounds1.rs | 3 + gcc/testsuite/rust/compile/break-rust2.rs | 2 +- gcc/testsuite/rust/compile/break1.rs | 2 +- gcc/testsuite/rust/compile/break2.rs | 3 +- .../rust/compile/break_continue_outside_loop.rs | 10 + .../rust/compile/break_with_value_inside_loop.rs | 14 + gcc/testsuite/rust/compile/broken_utf8.rs | 2 + gcc/testsuite/rust/compile/bytecharstring.rs | 3 + gcc/testsuite/rust/compile/canonical_paths1.rs | 3 + gcc/testsuite/rust/compile/cast_generics.rs | 3 + gcc/testsuite/rust/compile/changed_intrinsics.rs | 9 + gcc/testsuite/rust/compile/closure_no_type_anno.rs | 3 + .../rust/compile/complex_qualified_path_in_expr.rs | 5 +- gcc/testsuite/rust/compile/const-issue1440.rs | 3 + gcc/testsuite/rust/compile/const_generics_1.rs | 3 + gcc/testsuite/rust/compile/const_generics_3.rs | 2 +- gcc/testsuite/rust/compile/const_generics_4.rs | 2 +- gcc/testsuite/rust/compile/const_generics_8.rs | 3 + gcc/testsuite/rust/compile/continue1.rs | 2 +- gcc/testsuite/rust/compile/derive_macro1.rs | 3 + gcc/testsuite/rust/compile/derive_macro3.rs | 3 + gcc/testsuite/rust/compile/derive_macro4.rs | 3 + gcc/testsuite/rust/compile/derive_macro6.rs | 3 + gcc/testsuite/rust/compile/dup_fields.rs | 8 +- gcc/testsuite/rust/compile/expected_type_args2.rs | 3 + gcc/testsuite/rust/compile/expected_type_args3.rs | 3 + gcc/testsuite/rust/compile/found_struct.rs | 11 + gcc/testsuite/rust/compile/func2.rs | 2 +- gcc/testsuite/rust/compile/generics1.rs | 3 + gcc/testsuite/rust/compile/generics11.rs | 3 + gcc/testsuite/rust/compile/generics12.rs | 3 + gcc/testsuite/rust/compile/generics2.rs | 3 + gcc/testsuite/rust/compile/generics3.rs | 3 + gcc/testsuite/rust/compile/generics4.rs | 3 + gcc/testsuite/rust/compile/generics6.rs | 3 + gcc/testsuite/rust/compile/generics7.rs | 3 + gcc/testsuite/rust/compile/generics8.rs | 3 + gcc/testsuite/rust/compile/if_let_expr.rs | 3 + gcc/testsuite/rust/compile/issue-1005.rs | 3 + gcc/testsuite/rust/compile/issue-1019.rs | 3 + gcc/testsuite/rust/compile/issue-1031.rs | 3 + gcc/testsuite/rust/compile/issue-1034.rs | 3 + gcc/testsuite/rust/compile/issue-1128.rs | 3 + gcc/testsuite/rust/compile/issue-1129-2.rs | 3 + gcc/testsuite/rust/compile/issue-1130.rs | 3 + gcc/testsuite/rust/compile/issue-1131.rs | 3 + gcc/testsuite/rust/compile/issue-1165.rs | 3 + gcc/testsuite/rust/compile/issue-1173.rs | 3 + gcc/testsuite/rust/compile/issue-1235.rs | 3 + gcc/testsuite/rust/compile/issue-1237.rs | 3 + gcc/testsuite/rust/compile/issue-1289.rs | 3 + gcc/testsuite/rust/compile/issue-1383.rs | 3 + gcc/testsuite/rust/compile/issue-1447.rs | 3 + gcc/testsuite/rust/compile/issue-1589.rs | 3 + gcc/testsuite/rust/compile/issue-1725-1.rs | 3 + gcc/testsuite/rust/compile/issue-1725-2.rs | 3 + gcc/testsuite/rust/compile/issue-1773.rs | 3 + gcc/testsuite/rust/compile/issue-1786.rs | 3 + gcc/testsuite/rust/compile/issue-1893.rs | 3 + gcc/testsuite/rust/compile/issue-1901.rs | 3 + gcc/testsuite/rust/compile/issue-1930.rs | 3 + gcc/testsuite/rust/compile/issue-1981.rs | 7 +- gcc/testsuite/rust/compile/issue-2019-1.rs | 3 + gcc/testsuite/rust/compile/issue-2019-2.rs | 3 + gcc/testsuite/rust/compile/issue-2019-3.rs | 3 + gcc/testsuite/rust/compile/issue-2036.rs | 3 + gcc/testsuite/rust/compile/issue-2037.rs | 3 + gcc/testsuite/rust/compile/issue-2070.rs | 3 + gcc/testsuite/rust/compile/issue-2105.rs | 26 + gcc/testsuite/rust/compile/issue-2106.rs | 3 + gcc/testsuite/rust/compile/issue-2135.rs | 3 + gcc/testsuite/rust/compile/issue-2136-1.rs | 3 + gcc/testsuite/rust/compile/issue-2136-2.rs | 3 + gcc/testsuite/rust/compile/issue-2139.rs | 3 + gcc/testsuite/rust/compile/issue-2142.rs | 3 + gcc/testsuite/rust/compile/issue-2165.rs | 3 + gcc/testsuite/rust/compile/issue-2166.rs | 3 + gcc/testsuite/rust/compile/issue-2190-1.rs | 3 + gcc/testsuite/rust/compile/issue-2190-2.rs | 3 + gcc/testsuite/rust/compile/issue-2195.rs | 3 + gcc/testsuite/rust/compile/issue-2238.rs | 3 + gcc/testsuite/rust/compile/issue-2304.rs | 3 + .../rust/compile/{issue-1981.rs => issue-2330.rs} | 108 +- gcc/testsuite/rust/compile/issue-2375.rs | 14 + gcc/testsuite/rust/compile/issue-2477.rs | 3 + gcc/testsuite/rust/compile/issue-2478.rs | 16 + gcc/testsuite/rust/compile/issue-2479.rs | 22 + gcc/testsuite/rust/compile/issue-850.rs | 3 + gcc/testsuite/rust/compile/issue-855.rs | 3 + gcc/testsuite/rust/compile/issue-925.rs | 3 + gcc/testsuite/rust/compile/macro-issue1400.rs | 3 + gcc/testsuite/rust/compile/macro-issue2273.rs | 7 + gcc/testsuite/rust/compile/macro20.rs | 3 + gcc/testsuite/rust/compile/macro23.rs | 3 + gcc/testsuite/rust/compile/macro40.rs | 3 + gcc/testsuite/rust/compile/macro54.rs | 3 + gcc/testsuite/rust/compile/macro56.rs | 9 + .../rust/compile/missing_constructor_fields.rs | 10 + gcc/testsuite/rust/compile/name_resolution1.rs | 9 + gcc/testsuite/rust/compile/name_resolution2.rs | 16 + gcc/testsuite/rust/compile/name_resolution3.rs | 9 + gcc/testsuite/rust/compile/name_resolution4.rs | 16 + gcc/testsuite/rust/compile/name_resolution5.rs | 15 + gcc/testsuite/rust/compile/nested_generic.rs | 3 + gcc/testsuite/rust/compile/non_member_const.rs | 13 + .../rust/compile/not_find_value_in_scope.rs | 7 + .../parse_associated_type_as_generic_arg.rs | 3 + .../parse_associated_type_as_generic_arg2.rs | 3 + .../parse_associated_type_as_generic_arg3.rs | 3 + .../compile/parse_complex_generic_application.rs | 3 + .../compile/parse_complex_generic_application2.rs | 3 + gcc/testsuite/rust/compile/path_as_generic_arg.rs | 3 + gcc/testsuite/rust/compile/privacy4.rs | 3 + gcc/testsuite/rust/compile/privacy6.rs | 3 + .../compile/proc_macro_attribute_crate_type.rs | 4 + .../compile/proc_macro_attribute_non_function.rs | 58 + .../proc_macro_attribute_non_root_function.rs | 6 + .../proc_macro_attribute_non_root_method.rs | 10 + .../proc_macro_attribute_non_root_module.rs | 6 + .../rust/compile/proc_macro_attribute_private.rs | 4 + .../rust/compile/proc_macro_crate_type.rs | 4 + .../rust/compile/proc_macro_derive_crate_type.rs | 6 + .../rust/compile/proc_macro_derive_malformed.rs | 4 + .../rust/compile/proc_macro_derive_non_function.rs | 60 + .../compile/proc_macro_derive_non_root_function.rs | 6 + .../compile/proc_macro_derive_non_root_method.rs | 12 + .../compile/proc_macro_derive_non_root_module.rs | 6 + .../rust/compile/proc_macro_derive_private.rs | 6 + .../rust/compile/proc_macro_non_function.rs | 57 + .../rust/compile/proc_macro_non_root_function.rs | 6 + .../rust/compile/proc_macro_non_root_method.rs | 10 + .../rust/compile/proc_macro_non_root_module.rs | 6 + gcc/testsuite/rust/compile/proc_macro_private.rs | 4 + .../rust/compile/proc_macro_pub_function.rs | 3 + .../rust/compile/proc_macro_pub_module.rs | 3 + gcc/testsuite/rust/compile/rust_abi.rs | 1 + .../rust/compile/sizeof-stray-infer-var-bug.rs | 3 + gcc/testsuite/rust/compile/stmt_with_block_dot.rs | 3 + .../rust/compile/torture/associated_types1.rs | 3 + .../rust/compile/torture/forward_decl_5.rs | 3 + gcc/testsuite/rust/compile/torture/generics1.rs | 3 + gcc/testsuite/rust/compile/torture/generics10.rs | 3 + gcc/testsuite/rust/compile/torture/generics11.rs | 3 + gcc/testsuite/rust/compile/torture/generics12.rs | 3 + gcc/testsuite/rust/compile/torture/generics13.rs | 3 + gcc/testsuite/rust/compile/torture/generics14.rs | 3 + gcc/testsuite/rust/compile/torture/generics15.rs | 3 + gcc/testsuite/rust/compile/torture/generics16.rs | 3 + gcc/testsuite/rust/compile/torture/generics17.rs | 3 + gcc/testsuite/rust/compile/torture/generics18.rs | 3 + gcc/testsuite/rust/compile/torture/generics19.rs | 3 + gcc/testsuite/rust/compile/torture/generics2.rs | 3 + gcc/testsuite/rust/compile/torture/generics20.rs | 3 + gcc/testsuite/rust/compile/torture/generics21.rs | 3 + gcc/testsuite/rust/compile/torture/generics22.rs | 3 + gcc/testsuite/rust/compile/torture/generics23.rs | 3 + gcc/testsuite/rust/compile/torture/generics24.rs | 3 + gcc/testsuite/rust/compile/torture/generics25.rs | 3 + gcc/testsuite/rust/compile/torture/generics26.rs | 3 + gcc/testsuite/rust/compile/torture/generics27.rs | 3 + gcc/testsuite/rust/compile/torture/generics28.rs | 3 + gcc/testsuite/rust/compile/torture/generics29.rs | 3 + gcc/testsuite/rust/compile/torture/generics3.rs | 3 + gcc/testsuite/rust/compile/torture/generics30.rs | 3 + gcc/testsuite/rust/compile/torture/generics31.rs | 3 + gcc/testsuite/rust/compile/torture/generics32.rs | 3 + gcc/testsuite/rust/compile/torture/generics4.rs | 3 + gcc/testsuite/rust/compile/torture/generics5.rs | 3 + gcc/testsuite/rust/compile/torture/generics6.rs | 3 + gcc/testsuite/rust/compile/torture/generics7.rs | 3 + gcc/testsuite/rust/compile/torture/generics8.rs | 3 + gcc/testsuite/rust/compile/torture/generics9.rs | 3 + gcc/testsuite/rust/compile/torture/intrinsics-2.rs | 3 + gcc/testsuite/rust/compile/torture/intrinsics-3.rs | 2 +- gcc/testsuite/rust/compile/torture/intrinsics-6.rs | 3 + gcc/testsuite/rust/compile/torture/intrinsics-7.rs | 3 + gcc/testsuite/rust/compile/torture/intrinsics-8.rs | 3 + gcc/testsuite/rust/compile/torture/issue-1024.rs | 3 + gcc/testsuite/rust/compile/torture/issue-1075.rs | 3 + gcc/testsuite/rust/compile/torture/issue-1432.rs | 4 + gcc/testsuite/rust/compile/torture/issue-1555.rs | 3 + gcc/testsuite/rust/compile/torture/issue-368.rs | 3 + gcc/testsuite/rust/compile/torture/issue-808.rs | 3 + gcc/testsuite/rust/compile/torture/issue-862.rs | 4 + gcc/testsuite/rust/compile/torture/issue-893-2.rs | 3 + gcc/testsuite/rust/compile/torture/issue-893.rs | 3 + gcc/testsuite/rust/compile/torture/must_use2.rs | 3 + gcc/testsuite/rust/compile/torture/nested_fn2.rs | 3 + gcc/testsuite/rust/compile/torture/phantom_data.rs | 3 + .../rust/compile/torture/range-lang-item1.rs | 3 + gcc/testsuite/rust/compile/torture/traits1.rs | 3 + gcc/testsuite/rust/compile/torture/traits11.rs | 3 + gcc/testsuite/rust/compile/torture/traits12.rs | 3 + gcc/testsuite/rust/compile/torture/traits13.rs | 3 + gcc/testsuite/rust/compile/torture/traits14.rs | 3 + gcc/testsuite/rust/compile/torture/traits15.rs | 3 + gcc/testsuite/rust/compile/torture/traits16.rs | 3 + gcc/testsuite/rust/compile/torture/traits17.rs | 3 + gcc/testsuite/rust/compile/torture/traits18.rs | 3 + gcc/testsuite/rust/compile/torture/traits19.rs | 3 + gcc/testsuite/rust/compile/torture/traits2.rs | 3 + gcc/testsuite/rust/compile/torture/traits3.rs | 3 + gcc/testsuite/rust/compile/torture/traits4.rs | 3 + gcc/testsuite/rust/compile/torture/traits5.rs | 3 + gcc/testsuite/rust/compile/torture/traits6.rs | 3 + gcc/testsuite/rust/compile/torture/traits7.rs | 3 + gcc/testsuite/rust/compile/torture/traits8.rs | 3 + gcc/testsuite/rust/compile/torture/traits9.rs | 3 + .../rust/compile/torture/transmute-size-check-1.rs | 3 + gcc/testsuite/rust/compile/torture/transmute1.rs | 3 + .../rust/compile/torture/uninit-intrinsic-1.rs | 3 + .../rust/compile/torture/utf8_identifiers.rs | 3 + gcc/testsuite/rust/compile/traits1.rs | 3 + gcc/testsuite/rust/compile/traits10.rs | 3 + gcc/testsuite/rust/compile/traits11.rs | 3 + gcc/testsuite/rust/compile/traits12.rs | 3 + gcc/testsuite/rust/compile/traits2.rs | 3 + gcc/testsuite/rust/compile/traits3.rs | 3 + gcc/testsuite/rust/compile/traits4.rs | 3 + gcc/testsuite/rust/compile/traits5.rs | 3 + gcc/testsuite/rust/compile/traits6.rs | 3 + gcc/testsuite/rust/compile/traits7.rs | 3 + gcc/testsuite/rust/compile/traits8.rs | 3 + gcc/testsuite/rust/compile/traits9.rs | 3 + gcc/testsuite/rust/compile/tuple_struct2.rs | 2 +- gcc/testsuite/rust/compile/type-bindings1.rs | 3 + .../rust/compile/unconstrained_type_param.rs | 3 + gcc/testsuite/rust/compile/unsafe10.rs | 3 + gcc/testsuite/rust/compile/wrong_lhs_assignment.rs | 7 + .../rust/compile/wrong_no_of_parameters.rs | 9 + gcc/testsuite/rust/execute/same_field_name.rs | 8 + gcc/testsuite/rust/execute/torture/closure1.rs | 3 + gcc/testsuite/rust/execute/torture/closure2.rs | 3 + gcc/testsuite/rust/execute/torture/closure3.rs | 3 + gcc/testsuite/rust/execute/torture/closure4.rs | 3 + gcc/testsuite/rust/execute/torture/coercion1.rs | 3 + gcc/testsuite/rust/execute/torture/coercion2.rs | 3 + gcc/testsuite/rust/execute/torture/coercion3.rs | 3 + .../rust/execute/torture/copy_nonoverlapping1.rs | 4 +- .../rust/execute/torture/derive_macro1.rs | 3 + .../rust/execute/torture/derive_macro3.rs | 3 + .../rust/execute/torture/derive_macro4.rs | 5 +- gcc/testsuite/rust/execute/torture/index1.rs | 3 + gcc/testsuite/rust/execute/torture/issue-1120.rs | 3 + gcc/testsuite/rust/execute/torture/issue-1133.rs | 3 + gcc/testsuite/rust/execute/torture/issue-1198.rs | 3 + gcc/testsuite/rust/execute/torture/issue-1232.rs | 3 + gcc/testsuite/rust/execute/torture/issue-1249.rs | 3 + gcc/testsuite/rust/execute/torture/issue-1436.rs | 3 + gcc/testsuite/rust/execute/torture/issue-1496.rs | 3 + gcc/testsuite/rust/execute/torture/issue-1720-2.rs | 3 + gcc/testsuite/rust/execute/torture/issue-1720.rs | 3 + gcc/testsuite/rust/execute/torture/issue-2052.rs | 3 + gcc/testsuite/rust/execute/torture/issue-2179.rs | 3 + gcc/testsuite/rust/execute/torture/issue-2180.rs | 3 + gcc/testsuite/rust/execute/torture/issue-2236.rs | 3 + gcc/testsuite/rust/execute/torture/issue-647.rs | 3 + gcc/testsuite/rust/execute/torture/issue-845.rs | 3 + gcc/testsuite/rust/execute/torture/issue-851.rs | 3 + gcc/testsuite/rust/execute/torture/issue-858.rs | 3 + gcc/testsuite/rust/execute/torture/macros23.rs | 3 + gcc/testsuite/rust/execute/torture/macros28.rs | 3 + gcc/testsuite/rust/execute/torture/method2.rs | 3 + gcc/testsuite/rust/execute/torture/method3.rs | 3 + gcc/testsuite/rust/execute/torture/method4.rs | 3 + .../rust/execute/torture/operator_overload_1.rs | 3 + .../rust/execute/torture/operator_overload_10.rs | 3 + .../rust/execute/torture/operator_overload_11.rs | 3 + .../rust/execute/torture/operator_overload_12.rs | 3 + .../rust/execute/torture/operator_overload_2.rs | 3 + .../rust/execute/torture/operator_overload_3.rs | 3 + .../rust/execute/torture/operator_overload_4.rs | 3 + .../rust/execute/torture/operator_overload_5.rs | 3 + .../rust/execute/torture/operator_overload_6.rs | 3 + .../rust/execute/torture/operator_overload_7.rs | 3 + .../rust/execute/torture/operator_overload_8.rs | 3 + .../rust/execute/torture/operator_overload_9.rs | 3 + .../rust/execute/torture/prefetch_data.rs | 3 + gcc/testsuite/rust/execute/torture/ref-pattern2.rs | 3 + gcc/testsuite/rust/execute/torture/slice-magic.rs | 3 + gcc/testsuite/rust/execute/torture/slice-magic2.rs | 3 + gcc/testsuite/rust/execute/torture/slice1.rs | 3 + gcc/testsuite/rust/execute/torture/str-layout1.rs | 3 + gcc/testsuite/rust/execute/torture/trait1.rs | 3 + gcc/testsuite/rust/execute/torture/trait10.rs | 3 + gcc/testsuite/rust/execute/torture/trait11.rs | 3 + gcc/testsuite/rust/execute/torture/trait12.rs | 3 + gcc/testsuite/rust/execute/torture/trait13.rs | 3 + gcc/testsuite/rust/execute/torture/trait2.rs | 3 + gcc/testsuite/rust/execute/torture/trait3.rs | 3 + gcc/testsuite/rust/execute/torture/trait4.rs | 3 + gcc/testsuite/rust/execute/torture/trait5.rs | 3 + gcc/testsuite/rust/execute/torture/trait6.rs | 3 + gcc/testsuite/rust/execute/torture/trait7.rs | 3 + gcc/testsuite/rust/execute/torture/trait8.rs | 3 + gcc/testsuite/rust/execute/torture/trait9.rs | 3 + gcc/testsuite/rust/execute/torture/transmute1.rs | 3 + gcc/testsuite/rust/execute/torture/wrapping_op1.rs | 3 + gcc/testsuite/rust/execute/torture/wrapping_op2.rs | 3 + gcc/testsuite/rust/link/generic_function_0.rs | 3 + gcc/testsuite/rust/link/generic_function_1.rs | 3 + gcc/testsuite/rust/link/trait_import_0.rs | 3 + libgrust/libproc_macro/{punct.cc => bridge.h} | 15 +- libgrust/libproc_macro/ident.cc | 28 +- libgrust/libproc_macro/ident.h | 13 +- libgrust/libproc_macro/literal.cc | 18 +- libgrust/libproc_macro/literal.h | 4 +- libgrust/libproc_macro/proc_macro.cc | 12 + libgrust/libproc_macro/proc_macro.h | 4 + libgrust/libproc_macro/{group.h => registration.h} | 36 +- libgrust/libproc_macro/rust/bridge/ident.rs | 25 +- libgrust/libproc_macro/rust/bridge/literal.rs | 12 +- libgrust/libproc_macro/rust/bridge/token_stream.rs | 13 +- libgrust/libproc_macro/tokenstream.cc | 17 +- libgrust/libproc_macro/tokenstream.h | 7 +- 527 files changed, 21304 insertions(+), 5762 deletions(-) create mode 100644 gcc/rust/resolve/rust-forever-stack.h create mode 100644 gcc/rust/resolve/rust-forever-stack.hxx create mode 100644 gcc/rust/resolve/rust-name-resolution-context.cc create mode 100644 gcc/rust/resolve/rust-name-resolution-context.h create mode 100644 gcc/rust/resolve/rust-rib.cc create mode 100644 gcc/rust/resolve/rust-rib.h create mode 100644 gcc/rust/rust_error_codes.def create mode 100644 gcc/rust/util/expected.h create mode 100644 gcc/rust/util/make-rust-unicode.py create mode 100644 gcc/rust/util/optional.h delete mode 100644 gcc/rust/util/rust-optional-test.cc delete mode 100644 gcc/rust/util/rust-optional.h create mode 100644 gcc/rust/util/rust-unicode-data.h create mode 100644 gcc/rust/util/rust-unicode.cc copy gcc/rust/{expand/rust-derive-copy.h => util/rust-unicode.h} (50%) create mode 100644 gcc/testsuite/rust/compile/abi-vardaic.rs rename gcc/testsuite/rust/compile/{bad-crate-name.rs => bad-crate-name1.rs} (100%) create mode 100644 gcc/testsuite/rust/compile/bad-crate-name2.rs create mode 100644 gcc/testsuite/rust/compile/break_continue_outside_loop.rs create mode 100644 gcc/testsuite/rust/compile/break_with_value_inside_loop.rs create mode 100644 gcc/testsuite/rust/compile/broken_utf8.rs create mode 100644 gcc/testsuite/rust/compile/changed_intrinsics.rs create mode 100644 gcc/testsuite/rust/compile/found_struct.rs create mode 100644 gcc/testsuite/rust/compile/issue-2105.rs copy gcc/testsuite/rust/compile/{issue-1981.rs => issue-2330.rs} (68%) create mode 100644 gcc/testsuite/rust/compile/issue-2375.rs create mode 100644 gcc/testsuite/rust/compile/issue-2477.rs create mode 100644 gcc/testsuite/rust/compile/issue-2478.rs create mode 100644 gcc/testsuite/rust/compile/issue-2479.rs create mode 100644 gcc/testsuite/rust/compile/macro-issue2273.rs create mode 100644 gcc/testsuite/rust/compile/macro56.rs create mode 100644 gcc/testsuite/rust/compile/missing_constructor_fields.rs create mode 100644 gcc/testsuite/rust/compile/name_resolution1.rs create mode 100644 gcc/testsuite/rust/compile/name_resolution2.rs create mode 100644 gcc/testsuite/rust/compile/name_resolution3.rs create mode 100644 gcc/testsuite/rust/compile/name_resolution4.rs create mode 100644 gcc/testsuite/rust/compile/name_resolution5.rs create mode 100644 gcc/testsuite/rust/compile/non_member_const.rs create mode 100644 gcc/testsuite/rust/compile/not_find_value_in_scope.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_attribute_crate_type.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_attribute_non_function.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_attribute_non_root_function.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_attribute_non_root_method.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_attribute_non_root_module.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_attribute_private.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_crate_type.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_derive_crate_type.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_derive_malformed.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_derive_non_function.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_derive_non_root_function.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_derive_non_root_method.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_derive_non_root_module.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_derive_private.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_non_function.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_non_root_function.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_non_root_method.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_non_root_module.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_private.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_pub_function.rs create mode 100644 gcc/testsuite/rust/compile/proc_macro_pub_module.rs create mode 100644 gcc/testsuite/rust/compile/rust_abi.rs create mode 100644 gcc/testsuite/rust/compile/wrong_lhs_assignment.rs create mode 100644 gcc/testsuite/rust/compile/wrong_no_of_parameters.rs create mode 100644 gcc/testsuite/rust/execute/same_field_name.rs copy libgrust/libproc_macro/{punct.cc => bridge.h} (86%) copy libgrust/libproc_macro/{group.h => registration.h} (68%)