This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch devel/rust/master in repository gcc.
at 9d81164aa04 Merge #1295
This branch includes the following new commits:
new a2ea9f7e702 Original rust code from 2014/2015 new bc4080fb5da Added more type no bounds parsing new 9ccce9982b3 Fixed data structure for storing target data new ead24ec6247 Rebase GCCRS against SimplyTheOthers c++11 AST. new 70137b4ec6a Update README for more instructions new 7a6059df73b Missing g++-multilib for workflow github env new a4efcf829f6 Missing plugin-dev to provide insn-modes.h for workflow github env new 3a2b1a2084a paralellized builds causes problems in workflow new 52243e9b396 Remove unused compilation code to GCC GENERIC. new 1ff5f98ee69 Fix broken build new 5a2eebc2920 Cleanup and fixes to retain desired behaviour new 55750e277c9 Changed compiler name in Make-lang.in to be consistent with [...] new 6b779bad392 Fixed the compiler name in another place in Make-lang.in new a58bfa53081 Add rust_OBJS to fix compiling error new 9eb64392105 Fix typo in README.md new 3835d919db3 Enhance AST dump new 89d78a4a9e0 Initial target hook construction new 7266d66d232 Fix indentation new c7c6f785c8e Adding Rust target hook documentation Added powerpc target [...] new 16a1e8af9d8 This setups an initial frame work for our resolution step f [...] new 2c40a7f3c02 Test a clang-format lint new 8e2f81b35a5 Revert "Test a clang-format lint" new 9fec18623e1 This sets up the conversion from AST to GCC new 4bbfea1e415 Enhance let statement in AST dump new a4c6b7b7514 Fix string literal printing in AST dump new 3f37e20a377 Fix params printing in DelimTokenTree new b7eef6648bb This will now compile a void function declaration to gimple new 0a75153ea0d need access to the expression for analysis new ae88a9f49e8 Setup error handling for infering types in declarations new e62655562fe need public access on the Literal from LiteralExpr new 60cc2cf64bd WIP more type inferencing code for LetStmt new b9289b59691 Add error E0282 when the LetStmt cannot be infered new fffedd18403 Add a basic lookup for builtin types new d0a1fcccb5d Add missing bool builtin new 2f3980d4166 make ArithmeticOrLogicalExpr visitable new 41b6aa7046f Need public access to IdentifierExpr ident and locus new 70f49c655b0 need public access to locus on OperatorExpr new b3c690081ff Do inferencing on Expressions needs type match checking new d02f55c3881 Need public to access locus and param name in FunctionParam new 821e1fb4a6a Need to be able to visit LHS and RHS of AssignmentExpr new 289cbcc7e69 Infer types to scope for FunctionParams new 1d4a355a01e Infer types for AssignmentExpr new 837cc2b5c46 Need access to function and params for CallExpr new ae07b534e2e Template the scope class new e8cff6a9da4 Need public access to Expr locus and rhs new 89f624877de Initial type comparison code for error: E0308 new b681de371e9 Reuse typeComparison checks in assignments and expressions new 40a5081072f Add in a toplevel pass to grab global declarations for anal [...] new 0833b2d55e3 For tuple structs the constructor is just a regular function call new 0fee2a060b3 Change rust-session-manager for resolution refactoring new de950d07f42 Refactor Resolution class new f26ccc9a6e2 Add rust-type-resolution new 2be82f24b41 Add rust-name-resolution new 1acf8eba36b Add type resolution to CallExpr new 2c6cb7e543f Add the referenced function to the CallExpr when resolved new cb00023bcb0 Need access to TypePath fields new 484a4c96a29 Don't continue to compilation to GIMPLE phase if we saw errors new 3601bdbe25b Start compilation of parameters and return type to functions new e83e46cd082 add type resolution to parameters and return types of functions new a98e889e9af Move scoping to Resolution class new 323caf74be5 Remove scoping in NameResolution destructor new f641587ed06 Remove scoping in TypeResolution destructor new d3cb8c3cd92 We need to analyse and store the locals per block for compilation new b26c1f617c0 compile locals per block new 0840906b747 Add a compilation unit scope to unitify how scoping is done [...] new c37f4627461 Need access to the LHS of the expression new bcfe32f59d6 This creates the initial design for the pass to compile to [...] new d24bacfe4c4 More AST conversion to GIMPLE new 6f772d22974 need access to the fields in AssignmentExpr and ReturnExpr new ab24b0549e3 Fix up returns and call expressions to actually work new 121ebe3f833 Compile LazyBooleans and ComparisonExpr to gimple new 6a9ddc71985 Ensure number of arguments match number of parameters to fu [...] new f230adf6179 Compile conditional expressions if/if-else/if-elif-else new de6bc4da463 Lower NegationExprs new 4433aa086a9 Add comments on the algorithm of name resolution new c9658f97840 Add function signature in rust-name-resolution.h new 0ec260e7608 Add basic functions of name resolution new 84ed897a9b5 Remove redundant virtual functions in Resolution class All [...] new 15280699c13 Struct record compilation and type resolution new 821da3d3a2b Refactor type resolution scoping to use a simple class akin [...] new fad970a5ecf Added TI C6X target hook (or a basic one at least) new f1d19b06d14 Added CR16 target hook (or provisional one at least) new 03bc3cd6826 Added C-SKY target hook (at least provisional one) new 158a1e07761 Added Epiphany target hook (or at least provisional one) new 3faf45fcf6c Added fr30 target hook (at least provisional one) new b0eb8fb1473 Added FRV target hook (or at least provisional one) new 72b91a85f0f Added FT32 target hook (or at least provisional one) new 3e34ae54b07 Added (really crappy) GCN target hook new 6206176647e Added IA-64 target hook (should be okay but still should ha [...] new e58a5c98546 Added IQ2000 target hook new e742ebec781 Added Lico32 target hook (or at least provisional one) new 695a885813d Added M32C target hook (provisional one at least) new 0195559c0ec Added provisional Motorola 68K target hook new 5f3f4b10772 Added M*Core target hook (or provisional one at least) new 493cf535ecc Modifications to tm.texi so that build should work new 27029ad4df8 Added MIPS target hook (provisional at least) new 2c9687c2df6 Added MMIX target hook (or provisional one at least) new 40eb6d5496f Added MN10300 target hook (or provisional one at least) new 888c584e064 Added moxie target hook (or at least provisional one) new ea5e2aff4e3 Added MSP430 target hook (or at least provisional one) new 1d7ab6b109a Added NDS32 target hook (or at least provisional one) new 8f0507ad9eb Type Resolve Struct initializtion of their fields new 9e9c2eb329b Added Nios II target hook (or provisional one at least) new c54f4e711e7 Added (very bad and provisional) Nvidia PTX target hook new 76376bd7266 Minor Nios II tweaks based on new information found new 14349043294 Added OpenRISC target hook (or at least provisional one) new b92289909d9 Added HPPA target hook (or provisional one at least) new 7cd87ee2da3 Added PDP-11 target hook (or provisional one at least) new 1bb2b31af24 Added PRU target hook (or provisional one at least) new ba0c8e0c360 Added RISC-V target hook (or at least provisional one) new 51e1554100d Added RL78 target hook (or at least provisional one) new fed3fd6054a Added Renesas RX target hook (or at least provisional one) new e8bf48baaf7 Added extremely provisional S/390 and zSeries target hook new a058ca33b04 Added target hook for Renesas SH (or provisional one at least) new aac6645c220 Added provisional SPARC target hook new ffb8dbc16a0 Compile AST::StructExprStructFields into a constructor tree. new cc2880c4081 Added TILE-Gx target hook new e6bc7049683 Added TILEPro target hook new 1bedf7bfc18 Added NEC V850 target hook (or provisional one at least) new 05e57eac43e Added VAX target hook (or provisional one at least) new 113f2b15c41 Added Visium target hook (or at least provisional one) new 2f12a7eba28 Added Xtensa target hook (or provisional one at least) new 610c1678de5 Enhancements to x86 target hook, should be feature complete [...] new 9f82c8a919c Improved and tidied up ARM target hook new f74f9d4b25b Improvements to aarch64 target hook new 9dd2cdd8338 i386 build fix against latest gcc new c26f60f6a28 Miscellaneous improvements to various target hooks new b758ec724cc Lexer cleanup new ce72a38e081 Attempted to solve string escape vs null character location issues new 318a91e6bae Massive lexer cleanup and refactoring - moved lots of stuff [...] new 8a633e3ca4d Attempt to modify buffered_queue to take ownership of a sou [...] new daedbe34765 Potential modifications to buffered_queue to move when resi [...] new e0db6e13f05 Converted Parser to template in preparation for macro expansion new 2f7007a777b Attempt to fix the ExprWithoutBlock in ExprStmtWithoutBlock [...] new fd68a282ede Attempt consolidation of ArithmeticOrLogicalExpr parsing new 2109985cb43 Attempt to consolidate CompoundAssignmentExpr parsing new c7440d88c72 Working on consolidating some other parsing functions new 636b1630184 Attempt to significantly reduce warning count by modifying [...] new 41b1bad402a Added more error_at formatting fixes new 5fbc20189d0 Test even more generic algorithm for parsing in for lifetimes new 4cfd9374624 Testing some more algorithmic changes new 2ed062a0be3 Improved parsing of MatchExpr (and AST structure) new e7cf2f7789d Added skeleton for macro expansion and added way to convert [...] new 0db87746452 Remove unused and add FIXME new f28325125b7 Initial TestSuite setup for make check-rust new 4e475efeb4e Add Docker file for automated images to allow for easier testing new 7b352d63e1c Fix formatting in Makefile new ed452249584 Use ifdef guards instead of pragma once new b27c4a4986f No need to declare Type as inferedType when it is already defined new 4a9f0d53b81 Updated README.md to add more info to fellow Rustaceans. new ac742ebc793 Linemap and Backend are both singletons new 5878919d031 Added GCC Rust Zulip channel link - please feel free to join :^) new e6ebbcc6dd3 Turn on make check-rust new 37560f930d8 Add Docker badges to README new 886b230d42e Add Type resolution to Array expressions new efbe8cc4d95 Resolve the type from an ArrayIndexExpression new 8567160538a Ensure the array index is of integer type. new 52963544519 Mark this as a FIXME memory leak new 3f491614f6e Fix README.md with updated GDB command new 8993741f97c GIMPLE coversions for ArrayIndexExpr and Arrays with values new 0394164f3db Add failure tests to rust testsuite new 03fc0e389fa We cannot lookup types to ensure they are known as AST::Typ [...] new 064c6e4815b Type Resolve ReturnExpr's to ensure they match the function type. new c5a1da3944a Add Twitter link new 3fa79a6dc58 Update GDB command to remove bad test.s source new 80e2ebd8d79 Only need to compile the Rust language new 21d0a20c773 Update Automations to only build rust to improve build times new cef34bd730d Fix typo in README.md new 423462fb678 Added proper cfg_attr expansion new eb644945a4f Added cfg stripping code (will top-level strip currently) new 98d429466bf Added strip-marking to statements, items and expressions (t [...] new 69048af1878 Added cfg stripping for ExternalItems new 1271b772038 Added more trait item stripping new 164e38246f0 Added more cfg-stripping new 37bbf2b8cbd Added cfg stripping for some expressions new f5ae2781823 Added more expression stripping new 25de39b1f0e Added more expr stripping new 4ec3b8d62b1 Added more expr cfg stripping new 9b252167a77 Added more expression cfg stripping new db397665141 Added new pattern stripping new c7080f178a6 Added more cfg stripping code new 0e5d54bcb0d Changed compiled files in makefile to be identical with ups [...] new 815c9e8b073 Fixed rust-type-resolution.cc compile error new 41c14b45ac6 Merge branch 'master' of https://github.com/redbrain/gccrs new b343d117f5c Fixed rust-compile.cc compile error new 53ddea7a266 Fixed formatting to fit gcc style new 4232e46d87f Fixed BlockExpr not being allowed to be empty new e21c9fe1657 Enhanced dumping of expansion new 6ee2c06c47a Attempt to fix array parsing errors new 4490d49331a Fixed SimplePath's operator == not being const new a697962166a Modified binding power used when parsing expression inside [...] new 6d9b6db945e Added location storage for struct expr fields new 29691626184 Improved use tree parsing new 52cc571b308 Prevented several warnings about unused parameters new 6e4b74fb77c Merge pull request #62 from SimplyTheOther/master new f0cc1df5913 Changed some for index loops to for iterator loops that can [...] new 3e459226165 Changed more index for loops to iterator for loops new 0496b05eafd Merge branch 'master' of https://github.com/redbrain/gccrs new 503eb9b3547 Add missing Dejagnu dependancy to run test suite. new 442b9caa12b Add zulip chat badge new b472eeeeb2a Merge pull request #65 from Rust-GCC/phil/dejagnu new 29fb9e4d937 tweak to rust-system.h includes new 3514168b990 Introduce HIR Mapping new 6c89617fc95 Cleanup Makefile for Rust new 97d2003e8c0 Add generated NodeId's to the AST new 5f2dd6de5bf Add in HIR Tree new 2cfc6276dad Add AST->HIR lowering pass new 4fb0ab7e635 This sets up a name resolution framework trying to follow r [...] new 44d10d95476 TypeResolution pass now with a TyTy module new a621e193654 Remove old analysis framework and strip the AST->GIMPLE pas [...] new 6136f0aebbb This is a new HIR -> GIMPLE pass it reuses the mappings fro [...] new bc14d9a0cd3 Fix the spelling of contribute in README.md. new f764eeb8abf Unified representation of macro invocation internal data - [...] new aa283484a3d Merge branch 'master' of https://github.com/redbrain/gccrs new 3a10d1f1596 Add type unification as part of typecheck. new 671cefe6125 When compiling a block it might reference a GIMPLE node tha [...] new 30dd20c0098 Merge branch 'master' of https://github.com/redbrain/gccrs new 627121b6996 Added code to expand cfg! macros new c4f1a7aa81f Fix minor typo in visibility as_string new 04bcc692f53 Seperate build and Test steps in the build new a4e20cf7653 Shadowing rules are done as part of name resolution. new b021811ab70 Add missing license text new aa2fbb5e48f Bring conditionals back since the HIR change. new f701ad5352c This brings arrays back into the new framework. It resolves [...] new d1afbb7ead5 Implement compilation of ArrayElemsCopied to GIMPLE new 379e594ce94 Update README with more content new a56656e26e6 Remove impl_block test. This is part of the next milestone [...] new 8d34ac3c160 Add logo to README new 7299d6d84ac Test a new ASTFragment union representation new 85972093747 Rewrote SingleASTNode representation new faf78e75e4e Merge branch 'master' of https://github.com/redbrain/gccrs new 467141184aa Implement constant expressions new 36ebe9a0380 This brings structs back in post HIR changes. It supports s [...] new 4d590e5d210 Create new Greetings automation on github new 1a97dbc6b54 Examine the Suffix hint on integers to apply apropriate TyTy type. new aef9821d9b0 Add in F32 and F64 types builtin types. new 82d80bf20ec Fix bad naming of f64 named type in GIMPLE. new c2cc8df0b5a Add in support to compile static variables. Still requires [...] new af04ea2222b Change CI to look for any unexpected failures to fail the build. new b5f86dca7e6 Added final to some overriden methods for optimisation, pla [...] new 238a31b33f7 Merge branch 'master' of https://github.com/redbrain/gccrs new 290fc4f416c Add test to cover handling hex, binary and octal number lit [...] new 4e0189ed288 Implicit Returns support. new 06d946d5223 Respect the f32 and f64 suffix on literals new ee85db852a5 Added type hint to literal creation for cfg! macro new 5a11dd79fcb Make TyTyVisitor a pure abstract class new 705b8b73aa6 There was a bug with LetStmts where we name resolved the id [...] new 6d7a53b684b Fix crash when compiling BlockExpr's new 0f42a240e53 Functions with parameters much receive their own scoping Rib new b247c0d5aad Merge branch 'master' of https://github.com/redbrain/gccrs new aa487ef2717 Cleanup - remove old for loop implementations in AttrVisitor new 9a3ad294e0a Add in a check for unused decls within ribs. new bc94b7de461 Merge branch 'master' of https://github.com/redbrain/gccrs new 5a9ceba8fd2 Mark DECL_PUBLIC for main fn or functions with visibility. new da3e15f13f8 (docs) update README.md new 05b9f235566 Fix link to build status shield new b3a39d99c1d Merge branch 'master' of https://github.com/redbrain/gccrs new d96e1594dd3 This brings in resolution and type checking of the unit-type. new e4a2a52b35e Enforce type checking on implicit returns new b06df5d4a95 This adds supports for tuples new a79e3b31be5 grouped expr wip new 7066c0eca18 Support GroupedExpr's new 659ade16115 Handle forward references in backend compilation new 02132139efa Fix the naming of VAR_DECLS within gimple nodes. new 2b7518cf8ae Add struct_field_expression support new c55cd0e10c0 Fix '#include <algorithm>' new 3713577c36e Turn brace-enclosed initializer list into actual assignments new 89631998d2f Delcare first case for ADT types field access fail to type [...] new 9a942d6fbd0 Add in TupleStruct support new f8d41b7e8a3 Add TupleIndexExpressions new 6e2acd529fc Support Struct field index initialisation new 12f7bd0fc4e Support struct initializers using Identifiers new 4f6f18fe296 Support struct base reference in constructors new cb44a8feb81 When we construct the fields can be in any order. new f6d33adc665 Fix bug using ADT types as return types to functions new 23edde6fef4 Fixes the ^= and %= compound expression parsing. new 76b308af7e6 ComparisonExprs and LazyBoolExprs are bools new 6e09093f1f7 Enforce the rules for arithmetic operations new 85d8754632d Implement NegationExpression new e2b761b13e6 Implement CompoundAssignmentExpressions new 9e733f4de49 Fix usage of parameters and the type resolver new 93b991e6043 Add FAQ link to README new be10fafbb6e Add warning to the README new be371b9f49e Add backend support to create immutable types new 5294dfe7dce Remove TyTy::ParamType this was wrongly used to represent F [...] new 0817c29a423 Add Integer and Float InterenceVariable new 854aad3b58e Add usize and isize types new 8578c61be50 Add mutablity checks and left hand size assignee checker new 244c2d2ea1a Support binding functions to LetStmts. new e0e49f43442 Add a recursive function test case new 3a0c8ca2156 Cleanup of AST - moved outer_attrs to child classes new 61b498895bc Merge with upstream new a48d424e4c5 Fixed compile error new 14aacf472dd Removed testcase that apparently didn't compile on CI new 36ac7b79717 Split out the integer inference variable tests new 877e7ac6c72 Readded outer attributes to if and if let exprs new 419677348e1 Add support for impl blocks for functions and constants. new 9abf0733814 Fix type resolution null pointer crash new 7c7c76f27f6 Merge branch 'master' of https://github.com/redbrain/gccrs new 5c7dacd845f Added some debug for cfg stripping and improved dump messages new d0e10517881 Fixed bad cfg predicate string interpolation new 3571e997473 Added more debug for cfg predicate checking new feaa2074d8c Added even more debug for cfg predicate checking new 83ca7285846 Added more debug for cfg expansion new 27eef5b7a06 Rewrote MetaNameValueStr to store raw string rather than qu [...] new c4be77f7e0f Enforce Duplicate definition rules new 599b04aa7d9 This adds support for basic BlockExpressions new 75b6fc46bd6 Move scan for unused names to be after type resolution new 7098b373172 Fix unreachable crash when a struct contains another algebr [...] new 59a8fa1a80c Support Self used within impl blocks new 34a39466b2a Add in support to compile Methods and MethodCallExpr new db713435344 Fix overloaded virtual and unused parameters warnings new 94be91d6159 Merge branch 'master' of https://github.com/redbrain/gccrs new 8f97711dce5 General cleanup of AST and macro expansion-related things new 0ccc245a06e With the merge of BlockExprs new cfd1d805ff5 Unified Tokens partially in preparation for macro expansion new 9f3ddb35959 Conditional blocks with else can resolve into a non unit ty [...] new 60cccd8e58f Fixes parsing if expressions as part of an expression. new b96299b0b96 Fix bad type resolution for CallExpr when fn is not simply [...] new c8b9c41bf24 Fix parsing |= as a compound assignment expression. new 9355fb29fc7 Enable -frust-dump-all option for debugging new cb9998216d7 Fix parse of LoopExpr as part of a normal expression new 1a2c0911f0e Support Simple LoopExpr new a3a343c8853 Give ParseRestriction option to allow for null parse_expr. new 016c40bedc7 Introduce new label namesapce for name resolution new ae273ffac99 Support Break without label and expression new f10e695fc50 Return expressions can be empty which us unit-type new 06c9fd97bf3 Support LoopLabels and break to label. new d02ab5925b6 Add check for break outside of a loop. new 0c7d0135663 Add support to break from loops with a value new 7d4ed9d38c7 Merge branch 'master' of https://github.com/redbrain/gccrs new a6405f1438b Merge pull request #227 from SimplyTheOther/master new 92898b29035 Fix bug parsing while loop expressions new 7366f6decf5 Add in while loop support new ebb5de23436 Add in ContinueExpr support new fac8276f737 Fix parsing of Char literals new 3ae8d55860c Add char type new ca514784717 Add ReferenceType with BorrowExpr and DereferenceExpr new 107674522db remove ast/clone-test.h new df5ef68888c Add debug interface to GCC debug_tree on GENERIC graphs new 8a580f91521 Format all files in gcc/rust/ using clang-format new 642cc5ed4ff Add clang format GitHub Action new 68a2f3d7eaa Renamed `TyBase` to `BaseType` new 59ce2a981b1 Renamed `combine` to `unify` new 3f2906e5e4f Added some doc for BaseRules and BaseType new 496f773bdaa Added `equals` method to `BaseType` new f37f3d3a982 Renamed `BaseRules::equals` back to `BaseRules::is_equal` new 6dc2bfb1d0c Removed `base` field from `BaseRules` new 3673b0b3b72 Fixed unsigned and signed comparision new 7f518fb5840 Reformat all files in gcc/rust/typecheck new 27df0c9f959 Run clang-format CI on every push on master branch new 684123ebc43 Trivial typo fix new 06bb1d6542a Update default configs in ExpansionCfg new 9af2ae0ff91 Support Generic arguments to Structs new ec9ead44a40 Adds the same support from generic structs in #235 onto tup [...] new 1c6eaa19077 Add some more error handling to generics new 3aa4bce8246 Fix to parse inner attribute correctly new 63dabd8161f Extract enums into the global namespace new 6c5b2a63268 Rewrite backend to accept the new enum new c8af0988598 Remove the last trace of the Operator enum new f0b7bd41383 Fix typo new 5625e071875 Remove the last trace of the Operator enum #2 new 1b857e339dd Cleanup AST-to-HIR lowering new 875bda0637f Modify AST and HIR code to use the new enums new 4ebeb3165cf Modify the parser to use the new enums new 6f103573767 Fix formatting new 0c13515af7e If the compiler crashes we fail the test new f879526899b Fix bug when assembling function names with :: in the symbol new 2a7cbe4fd99 Ensure compilation fails when Struct is constructed with CallExpr new 65e06883b05 Fix bad type resolution on deadcode1.rs and implicit_return [...] new e76855ab401 Add missing copright header new a886a9c06ed Add in TyTy support for an initial String Literal new 670da018324 Remove useless file. new 537f59bdef8 Fix bug when using general inference variables new 99980cbb5ef Missing const on method new 6212572b23c Introduce TyCtx wrapper over TyTy Types with elements than [...] new 0b35f5f10dc Cleanup Formatting for is_equal on TupleTypes new 01898e7cf27 Separate function definitions from function pointers. new 049d0cba8ed Cleanup HIR::Function to make fields private new b8549556123 Remove unused header inclusions. new 173bff7f12c Fix Woverloaded-virtual warnings. new b563491f40a CI: build using -j (nproc) new 6255b77717e Fix typo in README new 73c0f6ab2ba refactored class TyCtx to TyVar new fbe9e08d952 Add more examples for compiler usage via Docker new 837e9d75b75 Typo fix in substition new 0581e64df94 Fix Backend:: mark 2 methods pure new 3f361bd362b Modify parser error message reporting system to allow recov [...] new da073ad52c4 Fix last remaining Woverloaded-virtual new 196476601e6 Add TyTy::BaseType::debug interface new f0750d7091a Fix type unification for Inference Variables and return types new 1b0076675d8 Pop return type context after resolving the block. new 0b061cb099f Reduce nesting to cleanup formatting of the unify function. new eb33139efa7 refactor TypeResolution Resolve with new InferType::default [...] new 280ac5bd99b Generics continued this adds more type resolution to ADT an [...] new eaeeb78a8b4 update README.md (#299) new aca7b5d26b7 added to_string() for TyTy::TypeKind new 08b49a3e526 Cleanup TypeKindFormat new 6be4ce99d51 Add missing location info into TypePath new f9f1f1d7211 Refactor DejaGNU testsuite new fabb3894d5f WIP for #252 new e77c44ef26f Fix error while unexpected EOF when scanning for end of comment new e9bb91b4a7c Fix bad merge of test case to new TestSuite structure new 573120551a0 Add generics for impl blocks new 380c8295051 Init NodeId for NodeMappings on HIR::MethodCallExpr new e4ea09d6b8e Add Generic Impl block support new cf10b025881 Fix tests after several PR were merged new 099fcbd107a Add missing testcase for generics new ff1eca9a578 Fix infinite loop when expanding cfg attributes (#319) new 62418241970 Minor change in README.md new f3275df08d6 Minor changes in README.md new 67ed1e36cea Fix bad tracking on used substitutions on generic types. new d7593fec921 Add support for TypeAlias new 4aa5396e5c6 Fixed bug TyTy::SubstitutionRef::needs_substitution new 16b1b9579d8 'rust.test/xfail_compile/cfg_attr.rs' -> 'rust.test/compile [...] new c044fda54bc Fix CI checks new e997db04439 Add dg-error to generics4.rs xfail test new d4f8f921423 Backport std::unique_ptr new 0a63f6d619a Disallow nullptr in ArrayExpr new d71750b7829 Remove ArrayExpr::has_array_elems new 2ba543eb04c Modify parser to generate empty ArrayElemsValues instead of [...] new f12d8b770b2 Fix out-of-bound-array-access in type checking new 63697c37cf3 Add the new InferType to lookup table new dac1de7fde4 Fix include new 4b995062b73 Fix formatting new 85a3a9866c2 Add tests new a707707b97c Add dg-error directive to tests new 114bd7b45ea Address miscellaneous '-Werror=unused-parameter' diagnostic [...] new 62550489ce8 Merge commit '7c1e856bedb4ae190c420ec2d2ca5e08730cf21d' [#247] new 7d3616a63b6 Address '[...]/gcc/rust/parse/rust-parse-impl.h:4896:8: err [...] new c896b255396 Address '[...]/gcc/rust/rust-session-manager.cc:124:15: err [...] new 868ce1ffdd7 Address 'error: ‘op’ may be used uninitialized in this func [...] new 2e1a7f6a72b Address '[...]/gcc/rust/lex/rust-lex.cc:433:30: error: too [...] new 348a883eb87 Address 'error: ‘*<unknown>.Rust::HIR::QualifiedPathInType: [...] new 6b03dff440b Address 'error: ‘kind’ may be used uninitialized in this fu [...] new d1cbfc670fe Address '[...]/gcc/rust/rust-diagnostics.cc:198:38: error: [...] new 106f6226004 Placate GCC 4.8 new 419b492b39b Address '[...]/gcc/rust/parse/rust-parse-impl.h:8575:8: err [...] new f0ad7aefdc6 Address '[...]/gcc/rust/expand/rust-macro-expand.cc:3228:1: [...] new 21522a81416 Address 'error: ‘*<unknown>.Rust::HIR::ArrayType::<anonymou [...] new cb8b27a423d Fix formatting of file from merge of bootstrapping build fixes new da8f950b26f Address 'gcc/rust/typecheck/rust-tyty.h' '-Werror=unused-pa [...] new 9de710767fe Address '[...]/gcc/rust/rust-target.h:23: error: "DEFHOOK" [...] new 6acea403791 Fix formatting of files from bootstrap fixes new 112495e2574 Add bootstrap build based off our normal build which tests [...] new 2800f4499fa Add GCC bootstrap badge new 777ef8a74c6 Initial bors-ng integration new 4937562f7ca Merge #331 new 5da07eb33b5 Use TyVar::get_implict_infer_var to cleanup new 5c14e5f9c72 Merge branch 'master' into fix-zero-length-array-2 new f2941c7d59f Fix formatting new 90d5337d97e Fix typo new 85bd4cef64e Merge #288 new acb00620810 Add unused code pass new 9c97c858832 Merge #357 new edc4a954914 Merge #348 new 5b9f4f94b83 add more path to collect live symbols new 5439d353fe5 Merge #365 new ec127499257 [testsuite] Append to 'additional_prunes' [#281, #301] new be8828307f3 [testsuite] In 'additional_prunes' look for explicit 'error [...] new 4a2e0fc882a [testsuite] Scan for warning diagnostics, too new ca8744db3e5 Merge #362 new c3499198a97 Seperate look for undetermined types post type resolution new 0c5a6af749d Unify ADTRules needs to check identifier new 3fa740f4ff0 Add TyTy::BaseType::can_eq method to tyty module new 826ce3c92d6 Add impl mappings to inherent impl items new f98ccb3a0bc Refactor backend PathInExpr new 5fe4984806b Add path probe for inherent impl item candidates new 85f58741061 Add Canonical paths to name resolution new 7e4ca97cac0 Refactor Method resolution to take advantage of PathProbe new 2f62f936aba Add check for duplicate overlapping impl-items new 4ee35b6edb5 Add missing dg-warning annotations new 636ad7d95e0 Merge #358 new ce593f09f41 Add BORS badge to README.md new f5f32fb4a36 Implement the inline visitor new 935aff52a66 Merge #369 new ee247029acf Fix crash when mapping of Generic argument changes. new 9c53eb530a6 Add Check for unconstrained type parameters new 3ee4bf774c5 Merge #377 new f958d171774 Merge #378 new ed651fcdec1 Add basic wrapper over gcc rich_location new 01486c14135 Remove fatal error new 2b7807f0ac8 Enable RichLocations for multiple candidate errors in Path [...] new 5b8de2be3ac Fix testcase to add missing dg-error since rebase against master new 498758a1c23 Merge #374 new c5fdf8cc544 The trailing expression is not necessarily without a block new 3aeb9f47187 Introduce limited support for the never type new b3dfc9f1f92 Fix crash on empty parameters to generic data type new bb103b62d47 Add missing testcase new ee5afc03f94 Merge #381 new 393b783549e Reuse fold-const.c from GCC to enforce const array capacities new de5d648043c Fix dg-ice handling in rust testsuite new dd194669e3a Merge #384 new bb85500ecc4 Merge #383 new dd3c58b2ce5 Remove old libgrust lib this needs to be redone later on. new 28895c1265e Merge branch 'origin/master' new de9af784e79 Merge #380 new f48c7e87c5b Don't remove unreachable statements at HIR lowering new 8ee80abd2fb IfLetExpr: Assign outer_attrs in constructor new 041003da86f Merge #387 new e5aedbbb241 Merge #388 new e57b6895def Clean up the compilation of block expressions new a24a14371b1 Merge #390 new f1c6f7da67f When we resolve a Path to Self we cannot infer any substitions new 3df65d5b4ec Support partial substitution's new 6647bc65b1a Merge #394 new 3539a0392fd Name resolve any specified types in TypeParams new 62bcc93ece6 Merge #397 new ff1676e277a Reference types can contain TypeParameters new e547f7da588 Tuples can contain TypeParameters new f189f5bbab7 Merge #398 new eb2c6124c46 Improve error messages of unexpected arguments new c1296bc68e0 Add HIR lowering for GenericBindingArgs new 5d9855c69a2 Refactor to GenericParam to TypeParam in parameter mappings new 682cae549a4 Add missing comment for override_context new ffa45bed5e9 Typecheck the default type on TypeParam new 91ca22c7b91 Basic support for lifetime parameter new b7d95ea80be Add initial support for defaults on generic parameters new 0276ec39a9c Merge #399 new feaafdfecf4 Apply defaults if available to type substitutions new 2216cab0c9f Defaults to type params are not allowed here new b1dcbc3d8e2 Merge #401 new fad543c8b8b Add locations to implicit inference variables and partially [...] new 082161121ca Merge #406 new e355d22a21a Throw error instead of crashing when a whitespace is encoun [...] new 09ec48621f7 Fix clang formatting and include a test new b96ab2e1a95 Merge #409 new 843547eb485 Fix 'dg-error' directive in 'rust.test/xfail_compile/issue- [...] new d29b5c5ac3a Use standard 'dg-excess-errors' directive comment in 'rust. [...] new 613eeee78a1 Add note to 'rust.test/xfail_compile/issue-407.rs' [#407, #409] new 97dddb606f7 Add 'rust.test/xfail_compile/issue-407-2.rs' [#407, #409] new e4a4ebd3160 In DejaGnu directives, simplify 'target { *-*-* }' to 'targ [...] new 03e30ba43a8 Fix (and XFAIL) 'dg-error' directives in 'rust.test/xfail_c [...] new 949d9de3f45 Fix 'dg-error' directive in 'rust.test/xfail_compile/break2 [...] new 9a0a655cd0c Fix 'dg-error' directive in 'rust.test/xfail_compile/func2. [...] new 0824b2ed1f4 Merge #411 new 9fdb4b6aff5 Merge #410 new 9428db63281 We need to monomorphize tuples as well as ADT's new 7e66d683186 Merge #416 new 4fd7b3c0891 Ensure we lower the generic params for impl items new 4fa08ea79cd Add is method flag for FnTypes new 02f08eef46d Ensure generic arguments are resolved for MethodCallExpr new e0c5afe70d3 Only infer substitutions for type parameters which need it new f396811a971 Add testcase to cover case where type param cannot be infered new 338b20ed370 Ensure method resolution resolves to an actual method new a0e53ef9d1a Resolve method generic arguments new 3ff2b34d5bf Types need substitution check needs hardened new 99d1330b79a Handle inherited type arguments for methods new 7c45fcb6e23 Merge #424 new 299d98d8e6f Merge #422 new c04343dbab9 Explicitly track crate names within the mappings new 58e108c7c6d Implement basic rustc legacy symbol mangling new 5134aaa9f0b Merge #425 new decdb126e54 Enhance the is_equal for TyTy::FnTypes to account for subst [...] new 17258c94f8c Enhance TyTy::ParamType::is_equal new a1c148518de Add the identifier to part of fntype signitures new d326288aa4f Fix duplicated function generation for generics new fcd4ed43127 Fix format security warnings new 5d7fbc4a788 Merge #427 new 9bcbfee5f3e Add FNV-128 hash for legacy symbol mangling new ee53f178122 Create CONTRIBUTING.md new b27c694ae99 Merge #373 new 4d71539414c Merge #430 new a027e84a711 remove greetings yml new cd7b7ca2743 Add link to contributing guidlines new 39ff3ddc238 Add PR template new d89249208a0 Add issue templates ported from rust-clippy new 30e9cfbf6a6 name-resolver: Add NodeId to CanonicalPath lookup and rever [...] new f33f618e35e resolve-unused: Check for underscore before warning about u [...] new 033c1a83ab0 Add support for 'unsupported' test cases in testsuite new 05f9e179a86 Merge #433 new ca206dd3bbe Merge #393 #431 new 4153a8a99ba Create CODE_OF_CONDUCT.md new 937352288b3 Merge #372 new 41fbeec90c3 only parse inner_attributes if it start with #! not only # new 6e808c647e5 Merge #436 new 586d1d8066d DefId is a bit mask of CrateNum & LocalDefId new 99b73780e6e Merge #438 new dcb3a7b62b9 Fix aarch64 config for rust new 9ca4faebe11 Initialize crateNumItr in rust-hir-map to zero. new d9a5f670bb6 Fix assert in rust-buffered-queue peek new 251536cdb29 Merge #445 #446 new 5467ac12d7b Fix raw identifier parsing. new fd95c6cec37 Mention the identifier that was unused in ScanUnused. new 0cad21085b5 Merge #443 #444 #447 new a1779132907 Fix v8.1a typo in gcc/config/aarch64/aarch64-rust.c new 0f24dfab179 Merge #448 new 9cfe5c4aee9 include memmodel.h above tm_p.h in order to build success i [...] new 8f5b38ebde3 Merge #451 new 13f995c199a rs6000: Override TARGET_RUST_OS_INFO in linux64.h new 83c161d0b82 rs6000: Recognize GNU Rust when producing epilogue new 0a3696a4a81 Merge #454 new a3539302cd0 Reusing AST::Attribute and removing HIR::Attribute. new 75de60e68b4 Merge #453 new 5b0433b4bea stdin: Allow compilation from standard input new 4b13e27087a Merge #458 new 7fb247dce4f raiifile: Allow dash-prefixed files to be parsed new 2a644a5ebb5 Merge #460 new 7b89a2e3b90 Update README.md with GCC mailing list new 40d74620519 debug: Always print compiler debug info on stderr new 6b91184a267 Merge #463 new fd9e53249c6 Merge #462 new 688f589b9f1 Re-organize GCC/Rust testsuites new 325ef69b132 Merge #465 new 2840815dc44 lowering attribute by copying attribute from AST to HIR directly new 59b417323b2 Merge #469 new 6b6fcbb6a4b rs6000: Override TARGET_RUST_OS_INFO in linux.h new 324dfb828ce Merge #475 new f37acd00670 mips: Fix incorrect name for target feature flag TARGET_ODD_SPREG new 4414e8a4c21 Merge #478 new 51cbf184f3b rust_debug: Expose function in header and add inline overlo [...] new 665df329a2a rust_debug: Replace fprintf (stderr) with rust_debug new 432c5f9c650 Merge #466 new 535d89c34f3 Remove diagnostics pruning from 'rust_target_compile' [#301, #466] new ff4715d79e2 Merge #479 new 4e43d678e2d Use '-frust-debug' to control dumping of various Rust front [...] new f408033d52d Merge #480 new c1728c27cbb arm: Override TARGET_RUST_OS_INFO in bpabi.h new 1f1d9ed87d3 Merge #482 new 1c0d6ea02a7 Add AST node_id to AST Trait Items new 1b3d621f215 Add NodeMappings to HIR::Trait Items new f1526062d9c Add initial name resolution for traits and trait impls new 69b3e488803 Add AST to HIR lowering for traits and trait impls. new 1c0f8d6d2a2 This is the initial building blocks for Traits new 7222dcb2bb8 All toplevel items must respect the prefix for their path new 8564e93111e Update CONTRIBUTING.md new bc4c1ef45d4 Merge #455 new b2fd4346a65 Use PRIx64 to print 64bit hex values in legacy_hash new fcfbd8f9e00 Merge #484 #485 #486 new 41869028eaf arm: rust: Fix typo: hasBaseLine8MPreReqs => hasBaseline8MPreReqs new f1d080c601f arm: rust: Remove unsupported baselines arm_arch8_5 and arm [...] new df36e6b9abb Merge #488 new d8d7deb3351 HIR should not contain any macros new 75c44883dbe Name resolver should try to resolve each segment in turn new de454a17cf5 Fix PathExpression type resolution new b3090f174b3 Add comment about modules and paths new 59f8d7a2343 Merge #492 #493 new ba9728b4018 replace analysis dir with lint dir and rename liveness to marklive new 59f09fd5a48 Merge #494 new 44481c1c2bd Cleanup HIR to canonicalize TraitImpl to be treated as an i [...] new 730a2174b93 Refactor HIR::InherentImpl to become HIR::ImplBlock new 9d9ba033607 Impl blocks can have a trait reference new 9474a0f4a55 TraitImpl blocks have a different CanonicalPath to normal i [...] new 350b0e59514 Merge #495 new eeee6c73f04 Merge #496 new be78228790d avoid abort macro override the abort of std new 3ab773c57c7 Merge #497 new 5290a82434a Remove HIR::TraitItemMethod this can be represented by Trai [...] new f8ae675c108 Merge #498 new 1a3f878dc3b Mark function as override to squash warning new 59a56026372 Ensure rust_debug has printf specifier checks new d1fc48f20fb Merge #499 new abdb744aecb Update README.md for building steps on MacOS. new 7a47eb66a25 Merge #501 new c16652f3e43 Use DW_LANG_Rust in DWARF new bb0f91cad32 Update PULL_REQUEST_TEMPLATE.md new e200b89c0f6 Merge #503 new a0c1c0b4001 Merge #504 new 231de190d1c Use correct DWARF encoding for i8 and u8 types new 8dd844ad0ab Use DW_ATE_UTF for the Rust 'char' type new 213b638b326 Fix: do not use object after it has been moved new 09d26b3e0b1 Make 3 error messages slightly more informational new c143022ebee Add more info in HIR dump for struct new ace501018b5 Merge #505 new 4f31d4bbe9c Merge #506 #507 #508 new 8528f4b25f5 Update PULL_REQUEST_TEMPLATE.md new 485f4cf7a67 Fix up test suite buglets new 7d3157eec84 Merge #513 new c14fad23187 Fix various Wformat-diag diagnostics new 30d844bf11d Rename tuple field names new 470e5144f65 Merge #512 new f2d9faf3862 Merge #514 new 3ebfb4d4222 Use unique_ptr in Token new 9bedf77e05c Require moves in Token constructors new 2fb749c5f43 Fix RAIIFile buglet new 40b9e46abe4 Merge #517 new ce545f5318b Merge #518 new 012401ab1c9 Add support for struct definitions to be within a block new 4e5baf7e679 Merge #520 new 23f622047ec Handle empty/unit tuple structs in the parser. new 595ae7743c9 Merge #521 new c41d5a20d34 Handle empty/unit tuple enum variants in the parser. new 23e748d7a68 Merge #522 new 92a434a3390 Add support for nested functions new c87f2c72dcf Merge #523 new 71c644f430e Change unit-type from void_type_node to a zero sized unsign [...] new 07b7486e2c2 Merge #524 new 1a05bb190e5 borrowed function should not be unreachable function new 862722c6889 mark live symbol in deref exp new 4d786b72b52 make the method get_expr of NegationExpr keep consistant w [...] new b111e6305ad mark live symbol in NegationExpr new 08e3ae7fce3 Merge #525 new 13fd4d31da7 Add TypeKindString to tyty debug new 3ede4ff311b ADT types can be empty signifying a unit-struct new cb0db310b3d Add support for unit-struct new f0897236090 Add support for empty struct initilizer new 99bc27d2783 Merge #526 new 60cb8cc43b9 Reject non-pure decimal tuple indexes. new 0f486127e1e mark live symbol in lazyBooleanExpr new 476f0c67db8 mark live symbol in type cast expr new 8a458543eb3 mark live symbol in groupedExpr new c9cb0c3d446 mark live symbol in array expr new 5e63d163fe8 mark live symbol in tuple expr new 387d69cdf38 Merge #528 new 51d86210d3d Merge #527 new 6952f9871f7 mark live symbol in break expr new a89ee61180a mark live symbol in return expr new 348c893f9c5 mark live symbol in while expr new 5386fcdf20d mark live symbol in whilelet expr without test case new 5ff37842fb0 mark live symbol in for expr without test case new 54e0d017193 Merge #529 new 69ed5eaef43 Fix inner attribute parsing new b81ef441b89 Initial Trait Obligations to enforce trait-impl-items are p [...] new f4668ee7ead Merge #502 new bab6f6bcb29 Merge #530 new 1eb53a9d7a8 Suppress warning in rust-ast-lower-type.h ASTLowerGenericPa [...] new e2a40e08e26 Marking live symbol for struct construction. Comment iterat [...] new e0c0ef46d21 Merge #532 new 2d11bfd88c1 Merge #535 new 59897751aa7 Revert change to ScanUnused to not scan Types new 4860de6ae9f Remove unused default_ty_param from TypeResolveGenericParam::visit new ce5aab47afc Remove unused have_more_segments from TypeCheckExpr::resolv [...] new 1738bb8c76c Merge #537 new bb95f8f5ca0 Merge #536 new 5aa2188c89f exit immediately when the type checker find a error new 0163ca4b6f2 Merge #538 new 9e7e6b3b874 Implicit Self on Traits new 5e4505e162d Remove HIR::Method this finishes the desugaring of methods [...] new 458f7a5459a Merge #540 new 6d7b87f9dd9 make struct field carry the location info new d882a0c97f8 detect unused struct field. new 2b1d687d6a8 Merge #534 new e1aedf6ec7d mark live symbol in if expr family except if let expr new 210ae4f7b0f Merge #543 new 2e00415a117 mark live symbol support type alias and tuple struct new ff35f162dae Handle shebang line, plus any whitespace and comment skippi [...] new afe6eb7d16b Remove has_shebang flag from AST and HIR Crate classes new dc5e0183277 Fix bad naming of primitive types such as u64 which ended u [...] new 3c7c2f427c8 Merge #544 new 27b3d344288 Merge #546 new 29192293fdc Handle UTF-8 BOM in lexer new 94ada647bf3 Remove has_utf8bom flag from AST and HIR Crate classes new 630efc56d10 Merge #552 new 4fd64154212 make the warning msg be searched easier new 32c9b09fdb5 Merge #554 new 3670b0ef050 Merge #548 new 1e0b4e71a1e use rust_assert in dead code pass instead of rust_error_at new e750295b607 rust_assert to check return value new f3a345f0eb1 revert visit_path_segment return type to bool new 7dceca54802 replace all variable name ret to ok new 9a58a5c256b Merge #555 new 45869032331 call mark live symbols in ScanDeadcode instead of session:: [...] new 30ca3624209 Assert that impl items are non null when translated to hir new c5ce98cbb8d ImplBlocks can contain TypeAlias's new bb51a9de35e Add toplevel resolution for type alias new 91aa2cba1ca Refactor CanonicalPath so we can iterate the segments new e3390f56021 Introduce placeholder type new 99355534ef4 The type system has a function can_eq this adds a with_errors flag new 97b917f8d28 Traits must inherit the prefix trait path new 8bfeef998ff Add node-ids to type-path-segments in AST new 213bc11225f canonical path enhancements new 0352605f4ae Add path probe and impl overlapping updates for TypeAliases new 7ebf5d62d20 Ensure adding references adds it for all declarations with that ID new defb5832039 Add support for TypeAliases on Traits new f090e7ca9fa Merge #558 new 4560f469ee3 Merge #551 new 200fcaad462 add some comments about FindEntryPoints and MarkLive in dea [...] new e1e14958a90 Handle doc comment strings in lexer and parser new 36bd4a5c85a Remove HIR MacroItem and other hir macro forward declarations new 6d2a3d03ad2 Merge #560 new 7cecfe983b3 Merge #559 new 876f70e905a Remove HIR MacroItem and other hir macro forward declarations new 9415a4b7123 Merge #561 new 29d84b2c147 add some comments about how scan dead code pass handle Path [...] new b4ea3a19464 Merge #562 new e25ef1ec868 Add some comments about wha's kind of unused item will be warned new 60b1209d64c Fix Placeholder type checking new 6e0c46b86aa Trait item consts can have an optional expr new 05b5eec7ab0 Add check for missing items in impl of trait new 51f66ab1368 Merge #564 new 089e62f33c3 Merge #566 new 73ac7c5a1ec Impl items should have a DefID new 9bebd1e79ca warn the unused associated functions new ea04a9ff1d0 Add DefId mappings to TyTy::FnType new ebdf9336211 Only error for missing trait items. new 9783726c85e Add missing test case to close out unit-structs new 2404e4841d4 Merge #567 new b322f221ce0 Merge #569 #570 new 41a6819f7f6 Merge #568 new 20c8a85c2f6 call accept_vis directly instead of call it after get new d57f3b8af14 Merge #571 new f813b330983 Track the parent impl a probe candidate comes from. new ff137b6261c Keep track of impl blocks via mappings new 40ab687d565 Make TyTy::BaseType::can_eq const new eea221e39ea Merge #572 new 2f7b803bcca Refs should be used in the base ctor of BaseType new 4a966c3b7f2 Reference Types can be mutable new f82bf003ceb Add comment to can_eq new 0cbd3afc714 Initial coercion rules new f56781662f8 Assignments are a coercion site in rust new 02713d245aa Merge #577 new c76df9b8ee5 Remove unused code new 869b328c5c9 Merge #578 new aa4feb8867d Raw pointer support new 857953b3c70 HIR and GENERIC lowering for unsafe blocks new 1c63988eab8 Merge #581 new 6dfde8225f4 Merge #579 new 1c5fef82c0f Add iterate impl_blocks helper new 1709592fbf4 unsafe blocks can be used in expressions new dd825b9b5d2 Merge #582 new 1dc68e40f2d Add mappings for trait items new b830b3523eb Add testcase to cover parse errors in unsafe expressions new d0b2cd241cb Support dereference of pointers new 06a2ec7e934 Merge #585 #586 new 44472c580ce Merge #587 #589 new 17fcb1a3bad Better union support in the parser new afd9db6f6b2 Merge #590 new 4d841a49ddb Remove error handling in parse_type_no_bounds for PLUS token new 314b62ec787 Merge #591 new df2b3b15dc9 Support byte and byte string literals new f2ce41608ae Support RangeFrom ([x..]) and RangeFromTo ([x..y]) in the parser new 4447dba7c8a Merge #594 new a4e3ffd3768 Merge #593 new 5bf96284dd5 Add name resolution for TypeCastExpr new 75750d58cef Lowering Cast Expressions from AST to HIR. new 6822e1b3e49 Add GENERIC support for TypeCastExpr to call fold_convert_loc new 5313e4fbe7c Initial TypeCast Rules new f4dd2434cf3 Merge #592 new bb351c7a73c Fix crash when extern function item has no return type new 5b3909dd748 Merge #596 new 5f238bc0fdc Add name-resolution and HIR lowering for extern blocks new b992c8058c0 Merge #597 new f3bf1f293d9 Add resolution for extern function items new defe97ea4df Add mappings for external items new b176f389161 Add flags for FnType FNTYPE_IS_METHOD_FLAG FNTYPE_IS_EXTERN_FLAG new a9174d87f52 Fix assertion for trait item mappings new 9526e6d6216 Merge #599 new 2818017d36f Adds support for compilation of extern "C" functions. new 7f8adccb505 Add support for varadic extern "c" functions like printf new f76ddb42f82 Merge #598 new 86a46d7973f Use correct lookahead to peek after 'while' token when pars [...] new 06a65591eb0 Merge #600 new 389fd74a3f3 union support for hir type checking and gcc backend new cd67e5d5f13 Add locus to TupleField and pass it and union variants to H [...] new b56c6fdfaad Merge #601 new a0628a62ad2 Handle 'UnsafeBlockExpr' in liveness analysis new 2fe7fb7ce53 Merge #604 new c707190b29e Merge #602 new 76d9871594d ast: Merge both Module kinds in one class new 2e452473149 module: Merge both as_string() implementations new af152cbda51 ast-visitors: Remove declaration for both module types new 4a5af75e322 parser: Use Module constructor instead of both versions new c4077cc2a8c expand: Merge both implementations for both module types new 4292110a0ae Remove split-stack from backend new d04886a4ea8 Always check the result of expect_token while parsing new 0209c8f6624 Add 'rust/compile/torture/identifier-missing-impl-1.rs' [#603] new 73271c4ce5d Merge #607 new 7bdd8599b99 Merge #606 new 15635e68bb6 Merge #605 new af7cd8a9854 parser: Implement parse_items() as separate public function new 074c070c02e Merge #608 new b333711461c Add lowering for TypeBounds on Generic Parameters new 443d4d1f7cf Fix clone on TypeBounds new 874b783748d Add type bound name resolution new 4845c776841 Mark clone with const new 0db1c804562 Add missing mappings required for type resolution new 65ef30eb843 Support TypeBounds on Generic functions new 935f1d7da3e Merge #609 new 8389c018e53 More rustspec.cc cleanups new 41e3fb5d201 Merge #610 new c434e5fffc0 Add check for TypeBounds on argument substitutions new d80f411c8ad session: Turn Session class into basic singleton new ba75fe35b53 rust to gcc glue layer: Remove excess precision when done new f44e5cf628b Merge #614 new 6bd42365fa2 Merge #612 new 007e6ecefb0 lex: accept zero codepoints in strings new 43c1ab08f07 add missing copy constructors and equality interfaces new 49a498f28be refactor error_node to be part of the type not the resolver new 3f544652b42 Fix memory issues with multiple type-bounds new 72483b1ca91 Improve the error message for bad type bounds new fa2aec10e60 Merge #615 new 5e723d0b7a8 Merge #611 new 226f2e4f134 Make insert_new_definition permissive of the same mapping. new e10f3d65566 Merge #618 new 7e1813b56d8 Rename CanonicalPath::is_error to is_empty new 0c2c4d3f28e Merge #619 new 02424cf671e Pass pratt parsed location to expr parser functions to fix [...] new b1b59b12509 Merge #620 new 8bb47bcaf1f Add docker image builds though github actions. new ae3b9072a9b Merge #621 new c8220239c38 Update REDME.md for Docker builds new ed64f39213d Merge #622 new 06bfea60dd9 Refactor and extract CanonicalPath into a common header new 5c828514d77 Keep track of canonical paths in the mappings new 06ce0a66557 Lookup the canonical path for code-generation new a0ba86c3bef Merge #623 new da72de4d892 Change name resolver's iterate_* functions to allow early exit new 7be0232c686 Merge #625 new 53756e1a01c lexer: Add function to get original filename new b4993a62934 module: Add basic filename discovery new 3610c9b202b Merge #613 new 8208beaf1ec typecheck: add assert on resolve_root_path return value new e53f1acb282 Merge #628 new ee3d0b09dc7 parse if expression with unary minus or not expression new 52c1cdc9c63 Merge #630 new 6109a6b4b1c Suppress uninitialized candidate_type warning in process_tr [...] new bb52e25b2d4 Add support for const bool and const float new c4bab97a991 Use default type_for_size langhook new 4f02b38f6ab Allow bool and char to be cast as any integer type new 5b229ddbf41 Use builtin bool instead of creating new bool types for Com [...] new d9082b50a98 Merge #631 new 335cd53ddad Merge #633 new 3a944e1b7a4 Merge #632 new eb5e504ec28 Allow bool and char to be cast as any integer type new 9d30105d752 Use default type_for_size langhook new fc0c2dcf34b Add module map in HIR maps new 76ed248287c ast: add AST::Module::get_name method new 37a6b4ae780 resolve: add support for Module new fd1d9c1af7c hir: lower Module new ed9a473c741 typecheck + backend: add module support new b34ea0af5e9 tests: add tests for Module new 24838285ad9 Merge #637 new 387f73626ae Merge #509 #636 new 2148d2f9749 refactor code into cc file new b9c1a73e6d8 Trait item functions contain a block expression for its body new 3f877a690dc Add missing mappings for trait-items new 71cf0d44d3f Add support for optional trait functions in method calls new 3475f10cbf5 Add QualifiedPathInExpression name resolution new 1e74f08c141 Add QualifiedTypePath HIR lowering new fe9dd83b413 ProjectionType this is a special TyTy initial boiler plate new c25cdc84600 Initial Typechecking for projections new 1dc71847404 optional trait item with associated types new 048261647af Add qualified path support new 79754bd20bd Merge #626 new abaec437780 hir: Merge both module classes in one new e9746f445cf Merge #638 new 95ad46b905b Extract header Path type-check code into cc file new d609accab78 add trait_reference is_equal helper method new d5dd96322b5 Add Trait Resolver simple type-path lookup new a6c8bd136dd Add impl-trait path probe helper new 79092784f20 Refactor the function query compilation function out new cbfc0ee239f This allows for query based compilation new db24e859d8f Path resolution is done in two phases new 5a0e34b74aa Qualified paths can be fully resolved sometimes new ac3be517de2 Merge #640 new 2d681bdeda9 Ignore impl trait blocks in overlap pass new b3bb2e194c8 Merge #641 new 5a731790054 Reject duplicate field names in structs and unions. new 40042ce11fc Merge #642 new 5b509a775f9 modules: Add test case for #[path] modules new c3f146d98df module: Allow external module path to come from #[path] attribute new cc1a2c8699b expand: Add debug line for showing the path of an external module new 602f5e90c2e raii-file: Fix filename member initialization new 8c6a2f1dbf8 Fix issue with mangled name on function items with substitutions new f9e5e530391 Get rid of get_locus_slow new a5a0287f529 Merge #646 new 6b423816855 Merge #648 #649 new 1fc2a7fe7e2 Stop shadowing of hir mappings with substitution mappings new 58f2f624ef3 Merge #650 new 46e8bf357cc Qualified paths have a mandatory initial segment new d12be0a643e Use location when lowering TupleField new f16e3af9ad7 Replace HIRItem::get_impl_locus with HirItem::get_locus new 69728c59553 Remove GetLocusFromImplItem visitor new de024718701 Merge #652 new 82e10615797 Merge #651 new 0e3030707bf Add iterate helper for TypePaths new 2ab6f9ee9f2 Add name resolution for QualifiedPathInType new bd90c95ac73 Add HIR lowering for QualifiedPathInType new 5e7108c3582 Placeholder is not a unit-type new 58637abaeab Add type resolution for qualified-type-paths new 34969c14bed StructExprTuple doesn't really exist new c998198c669 StructExprUnit doesn't really exist new 3b5c0f65ef1 Remove Enumeration Expression, EnumExpr, classes new c33c6f3676d Merge #654 new 3438ea39e33 Ensure the implicit Self is first in the generic arguments new 9c56ecf32c0 Add helpers to as clause of QualifiedPaths to get the generic args new 07b354c31d2 Fix name resolution for generic trait references new 0798add3d3c Support Generic Traits in qualified paths new 50623899998 Merge #655 new 91507076503 name_mangling: Add Mangler class with multiple versions new 04ea1955ee6 mangling: Add option to choose mangling version new 2bbe1af01db Parse optional visibility for enum item new a3ac8573495 Resolve Enums and EnumItems new eaf5bc5c384 Add EnumItem HIR lowering new 37f3b02bf8e mangling: Use Enum(frust_mangling) for option instead of string new b6f69bf1369 parser: Expose get_errors() function new 2fe5d6c32a9 module: Add load_items() function new 6aff3e33a03 module: Load items if module is unloaded and not marked for strip new 8a9271e1921 Merge #657 new 52fb10b1e0f Merge #656 new 782cbcdee40 Keep track of the ABI in function types new a8fb0fd6507 Add builting block for simple intrinsics new bca1debe33b Support '-fdump-tree-original' before 'cgraph_node::finaliz [...] new 5a6341a6239 module: Add two test cases for external modules new 4c4241b4c8d Merge #660 new e17824d3c30 Merge commit 'bca1debe33bf477df850db5979e4206627b3790b' into HEAD new 4faa7d7765f Turn 'rust/execute/torture/sinf32.rs', 'rust/execute/tortur [...] new 8cd6306905b module: Rename get_filename() -> process_file_path() new 38f2795947a Merge #639 new 55f60bd6fe2 Merge #659 new 995bc1c9834 Add support for choosing stdcall fastcall and cdecl in the [...] new 49c9a88b3e3 type-bounds wip new fefc0b3ffbe Add name resolution for Trait bounds new 0f85a942134 Add HIR lowering for Trait Bounds new e93393d0072 Merge #662 new 0de1b5646cf modules: Move test case from compile/ to execute/ new d5b259a3fd4 modules: Fix usage of path attributes and early returns new ba31a24ddce Fix formatting in HIR::Trait new 454b78dd044 Add getter for Trait TypeBounds new e68a772a4a3 Make override context permissive when the TypeParam cannot resolve new a1c87bfea6c Add initial support to specify Super Traits new d52030df14a Merge #664 new c0254d7efe1 Merge #661 #663 new 2bf19c1b20b Merge #666 new 0c409fcf567 Fix bug with monomorphizing of trait items new e3b7eb58844 Merge #669 new 9464066111c Support indirection for struct and tuple field access new c644ee4c435 Merge #671 new 002313b3437 Initial autoderef support for method calls new 9b95c508298 Allow GCC to decide and perofmr inline optimizations new c8ffaa101c9 Merge #672 new 4493f1c927c Merge #673 new b74d42f43df Add test case to close out generics bug new af472f59319 Merge #674 new 04549bf8c34 Fix bug when calling method from generic reciever type-bound new 887598b92f2 Merge #679 new 57ebfd300bd Add initial name-resolution for dyn trait objects new b3d5577b59c Add HIR Lowering for TraitObjectTypeOneBound new 384cc64dab4 Merge #680 new ecb777cc8df Add building blocks for Dynamic object types new e29a8a4172a Cleanup error handling for CallExpr new 135807db037 When calling functions the arguments are a coercion site new 26fe2f57bc1 remove some debug new d144eea8629 Type coercions are recursive new d9a0a5f864b Allow for coercion of structures over to dynamic objects in [...] new aa019b251e9 Default to TyTy::Error node on TypePath resolution failure new c674e168ebc Add object safety checks for dynamic objects new a6e15ff5f05 Add method resolution to Dynamic objects new fabaf7d6caf Initial Dynamic dispatch support new de43a0ac6d4 Merge #684 new 6c1a482c9b6 v0-mangling: Add type prefixing for simple types new 98359f20cd2 Merge #685 new d68a9eacebb Fix byte char and byte string lexing code new 75be0426278 Merge #687 new 7a92e0ca3c7 Remove warnings from v0_mangle functions in rust-mangle.cc new 4abf34c2b61 Merge #688 new ac2d117861e x86: Instead of 'TARGET_ISA_[...]', 'TARGET_ISA2_[...]', us [...] new 4c386aaaa7a A bit of 'RichLocation' C++ tuning [#247], [#97, #374] new f3da612f98d Merge #690 new 8a0dd2bd981 Merge #689 new faafe0fb118 Update docker build workflow new 1eb4d0d3bad Try again for docker image build workflow new 28f527c9598 Merge commit '2961ac45b9e19523958757e607d11c5893d6368b' [#247] new e6e1cc117e1 Fix raw byte string parsing of zero and out of range bytes new fdcad086e13 Merge #695 new 65d06d56e82 Implement Byte Strings new 31b999c5c78 Remove raw string and raw byte string references from ast and hir new 23475a8131d Fix lexer to not produce bad unicode escape values new e0b9673a7cc Merge #699 new 99c28309d35 Merge #698 #701 new 579d76f771b Remove lambda iterator from HIR::CallExpr new 6cd07341b10 Remove lambda iterator from HIR::MethodCallExpr new 591b43e42e7 Coercion site type checking in CallExprs must hold onto the [...] new f6a04f38d51 Ensure we emit the code for coercion sites on CallExpr and [...] new 85338a7f1ca Remove lambda iterators in various HIR classes new a2c76651c9c Refactor TyTy with new Mutability enum new 6355d05a65c Merge #729 new 7a341772dcf Merge #710 #727 new 61db846ac97 remove AST::BlockExpr lambda and add get_statements new 3057d98a4e3 Merge #728 new 535a824bf74 GCC allows for the DCO sign-off. new c0669ceb147 Refactor HIR to use new Mutability enum new 8545a939291 Align DCO wording in '.github/PULL_REQUEST_TEMPLATE.md' new 5d9d3e32df9 Some polishing of DCO wording new 36088fa7df2 Update 'README.md' for DCO new e5a7ee48567 Merge #738 new eb29257b219 Merge #730 new b7bb6a98329 Add boiler plate for TyTy::ClosureType new b5e389241dd Merge #740 new 14a0f2ce316 Add array constant folding new ec1e7c28680 Merge #725 new a2484d5101c v0-mangling: Add base for base62 encoding new 35f6d0ffa6a v0-mangling: Add base functions for mangling scheme new bb32b21a219 Const fold ArrayElemsCopied new a1a45064100 Merge #748 new fd9d37c68ca util: Add rust-base62 implementation from rustc new 649e3e074bf Merge #747 new 8d8ab48b47f Implement unsafety enum and replaced boolean variable has_u [...] new 4d19ffcd4a6 Fixed formatting issues new 9edda157230 Merge #754 new ff5c2481404 Constify the Backend resolve compile interface new 3eea0076f23 Constify SubstitutionArg field SubstitutionParamMapping new 9cdaff9f5aa Constify GetUsedSubstArgs new e59ec1a592e Constify autoderef ajustments expected type field new 5f19fb535c9 Constify SubstitutionArgumentMappings::solve_mappings_from_ [...] new a1b0df02414 Constify BaseType::get_root since this should not change ownership new a80bcfc5b1c Remove bad prefix from RelativeTypePath resolution new d755769bd15 BugFix: TypePath resolution to handle associated types new b538aa91056 The number of required substituions is offset from the alre [...] new d17b799df72 Remove second lookup for query compiled functions new 3f67bb999b5 Refactor fill_param_ty into cc file new e9b10b3d299 Error handling is done via the TyTy::ErrorType instead of n [...] new 7d988344f74 Cleanup interfaces for associated impl mappings new ef70f0310a6 Add FIXME comment for inheriting bounds new 2cd9855d914 Merge #756 new 86ec0383d45 Merge #757 #758 #759 #760 new 4eb4684eba1 Squash unused parameter warning. new df61b8f0ee5 Merge #761 new fe77d2d5747 Fix ICE when trying to resolve associated type from type bounds new 243e5d800dc Ensure autoderef for generic recivers in method calls new b3b37e2c5cd Extract const helper method is_receiver_generic for path probes. new f3bd3f0dd8d Decouple the loop from processing a potential candidate in a path new 92a31969774 Support generic arguments on TypeBounds new 8e6c5a32b6e Merge #752 new e0b43ccd05b Add missing coercion site code to MethodCallExpr's new fb1d2a2ef2e Cleanup IR symbol names in gimple new ddf02f1750f Fix copyright/licensing information in 'gcc/rust/rust-linemap.h' new f4b4676d0a6 Update GCC/Rust files per 'contrib/update-copyright.py --th [...] new 94b1da7d971 Merge #763 new a51180ca2db Merge #762 new 868d3125d32 Merge #764 new 1d3a36276a0 gccrs: StructExprStructFields: remove `iterate` method new aefdb4d0365 Merge #767 new 5d65ef58a99 CompileExpr: fix copy pasta error message new d2b12ea8895 Merge #768 new 7661713e079 LifetimeWhereClauseItem: store the location of the item new 78ed354283b Merge #769 new fbc7f0e51b1 TraitImpl: track the polarity of the impl new 10122cbf216 Converted FnType preprocessor defines into constants new d4bfbb0b069 Merge #772 new 161a690d210 Merge #770 new b0e9cea1ae5 Add missing NodeId to where clause items new be717fca2f2 Add missing node mappings to HIR::WhereClauseItems new 7dc21da4d05 Add name resolution to higher ranked trait bounds new b01e62c136b Add WhereClauseItem::ItemType specifier to differentiate be [...] new 1a974603234 Add HIR lowering for where clause items new 1a8479839e9 Remove assertion for has_where_clause new 1b9ddc72405 TyTy add bounds in debug string new 4c873251e79 Add support for higher ranked trait bounds new 7604b6430cf Fix parser error for lifetime arguments new e28c43f2f40 Merge #771 new 657a9735339 Add support for constants within blocks new 0114e3e5b3b Add constant folding to ArrayIndexExpr new a2ce3ef6b02 Merge #775 new 08b83163db0 Remove iterate_params from AST::CallExpr and AST::MethodCallExpr new cba61d8dcbe Merge #774 new a66dd964134 Add location info in AST::TypeBoundWhereClauseItem and HIR: [...] new f569984bb80 No side effects in 'assert' expressions new a9daecd2a35 Merge #778 new ca0b06f86fd Merge #780 new 66832f312a7 Get rid of lambda within AST::TypePath and provide a method [...] new 1be610afab2 Merge #783 new 3c02a29f576 Add missing accessors for enum items new 6e69ab6d085 Get rid of lambda get_fields in struct new 82f3dd40d2d Extract reuseable function to handle substitutions for stru [...] new faa1a005e92 Refactor ADTType to consist of multiple variants new d18672f220b Add type-resolution for enum items new 919a5a4c5aa Get rid of bad gcc_unreachable new 56e4a9db1e0 Add TypePath resolution for enum ctor new e8d57d424b9 Add missing ID to variant ids new e0d9dde2f23 gha: save `check-rust` results as artifacts new 9b46e479089 Merge #787 new 5e8043380b6 Refactor struct-expr typechecking into its own impl file new 2fc460a6449 gccrs: add the `-frust-crate=` option to set the crate name new e3defa10bc6 Support Typechecking of ADT's of enums new fc5f8d74636 Default type checking on CallExpr's to TyTy::ErrorType new 09af9b16b43 Merge #788 new 5f0df4812c3 Merge #781 new 1657ee53d57 rust: track inline module scopes for module file resolution new 3dccdb1d6c5 Desugar AST::TraitObjectTypeOneBound new c8ee62ed453 Replace TupleType::iterate_fields with get_fields new 674221a3b27 Merge #791 new 8e992e371bb Merge #785 new b3e884c3e9d Add ImplItemTypes enum to switch between HIR::ImplItem types new 41d0e2fa961 Add missing bound to impl-type Self new c6dc53f9e2e Add a recursion-limit when resolving Parameter Types new d9f5eddc5a9 Make self const when compiling trait-items new 57acd1e2082 Fix nullptr as the result is not setup in this case new dfba45d0cd1 When we are resolving TypePaths default the result to ErrorType new 52ef760176a Remove duplicate accessors which can be const new d308ce83b9b Add generic-arguments to predicate as_string new b7520628b49 Add missing generic arguments to type-bound-predicate on tr [...] new 92a24fc3aec Enforce the is_concrete inferface to start cleaning up the [...] new c936060b860 Running `clang-format` locally [#242] new f4c200fcfec Support computing the addresses of the object safe items in [...] new e73922ef9f0 Merge #794 new d2f92e6a733 Add is_item helper to AST and HIR new 17dc14cb4b0 Support forward declared items within blocks new b22ec921606 Const fold ref,pointer,borrow+deref new bc858da45c3 Add missing const-folding for (expr) new 228240f3211 Add 'rust_internal_error_at' new 864fd885fe8 Turn 'rust_error_at' plus always-failing 'rust_assert' into [...] new 6a1e79714ce Tag 'rust_fatal_error' as 'noreturn' new 5074f89f4fd Remove clang-format from bors new 57c31311b33 Merge #796 new 9c4e3db7789 Added Remark.yml and .remarkrc new 57b10aef62e Merge #795 new d11a50eca37 Merge #798 new a7c31383def Changed DefId type from uint64_t to be struct new 07fee63db7b Merge pull request #792 from npate012/defid_to_struct new 8cc0140cf6b More help on running clang-format locally new 2b84783712b Update CONTRIBUTING.md new 2a070169814 Partially disable clang-format in rust-diagnostics.h new 328f2d79e5f Merge #802 new dcd758595f6 Merge #803 new 766f989251a Remove useless comments from HIR::MethodCallExpr new fdd69a69f87 Update AttrInput with AttrInputType new 0f3fc1983d6 Traits do allow TypeParameters with defaults new df3e0ec232b Add new TypeCheckContextItem to track current context new 795d70d7e6e Support parsing LangItems on traits new 89e02f52d86 Update path probe with optional filter for specific associa [...] new c47d5cbdee9 Initial support operator overloading on [lang = "add"] new 694cf025122 Fixup verify assigneee to be permissive of PathInExpression new 432add899f4 Revert desugaring of CompoundAssignment into arithmetic ope [...] new a7fb60bb626 Add support compound assignment operator overloads new 0f74fe23c6d Refactor operator overloading work to be more reuseable new 04a49acfa3c Add negation operator overload support new 6d1333ef46c LazyBooleanExpr does not need a nullptr check new 5514d9cec51 Merge #801 new 97c98deec7d rust-backend.h: remove unused function prototypes new 7a751f354a9 Replace Btype use with GCC tree new b52a68d2d86 Replace Bexpression with GCC tree new 553e88f1dd4 Replace Bstatement with GCC tree new 95048daaffa Replace Bfunction with GCC tree new a4e5aee5863 Replace Bblock with GCC tree new 01a52df9440 Replace Blabel with GCC tree new 5c87e61f96e clang-format and minor cleanup new 2547e60d2fc Fix ICE assertion on bad duplicate name new e584c6f8a78 Generic segments must be appended to the prefix and not override new 649e2ec5682 Unify the adjusted self argument to the self parameter on M [...] new e8695eee4f1 Add missing implict monomorphized types into the context new db832831ed1 Probe for candidates on based on the actual receiver type new 63fc39600ce Merge #805 new 0995184e26f Merge #810 new 0ecb6ea16bd Remove implicit name hack for trait associated types new fece068309e Merge #811 new 73a0903c156 Merge branch 'Rust-GCC:master' into master new 1a03ecbe994 Removed markdown linting errors from README.md and CONTRIBUTING.md new 87da9922e66 Merge #800 new a6cae6da513 Fix toplevel crate ribs id's new ddeb2118011 Refactor naming of canonical path mappings new 76ca8b8dff4 Fix bad datastructure within name resolver new 5a73de5ee91 Make mappings as part of the class new 0216a1a9a04 Remove the final hack for associated types new a60de84632f Merge #812 new 88995535f64 Support QualifiedPathInType's within the same Trait new a41851dfb5b Merge #813 new 8b36f2b80eb Set TREE_ADDRESSABLE when we need to borrow any expression new 717b6da459b Merge #814 new 4924160c275 Stop copying HIR::FunctionParams when during lowering new f967dd27790 Remove bad mutability lint new e7e65bbdf3a Allow references to arrays for ArrayIndexExpr accessor's new 67f4a371e5a Update legacy mangling of names new a2f59f14cea Bug fix mutability checks in can_eq for autoderef new e532893ba43 Always update the type context for monoprhized items except [...] new d0e51dca2de Make TyTy::BaseType::contains_type_parameters non-virtual new 12b7154e90f improve the error handling on operator overload cases new ec23757d369 Add support for generics within operator overloads new bdfe6abe2b1 Merge #819 new 295f0ae1661 Merge #817 new 98fb902fb30 Merge #820 new cf913e7f298 Merge #821 #822 new 3b8cbff816c Merge #823 new c7af812802f Support dereference operator overloading new 0024bc2f028 Merge #818 new 854281e251d Add script to generate gource new f742bead5f4 Constant folder now returns error_mark_node instead of nullptr new e43a784dc89 Get rid of lambdas with AST::ArrayElemsValues new 946069f506a Get rid of lambdas within AST::TupleStruct new 8c3ad67d19b Get rid of lambdas within AST::StructStruct new a9a7654d850 Get rid of lambdas within AST::Union new 88bf6bf78a6 Merge #828 new 310968874db Merge #829 #830 new 24dd9a6aef8 BugFix bad range in typechecking of enum ADTTypes new de9bb867970 Merge #831 new 40aae6224b1 Refactor TyTy::ResolveCompile pass to be in its own file new 91a5d085cb5 Refactor CallExpr and MethodCallExpr into rust-compile-expr.cc new 3629645386a Merge #832 #833 new e0588300adc Add enum code generation new 768f926074a Merge #834 new 4dba290c35d Add initial name-resolution for match-expr new a688913ac15 Add hir lowering for match-expr new 83a984b1a12 Merge #835 new c81eb149048 BugFix NodeId skew on AST::Patterns new 7615df78122 Merge #836 new 3a8c5853005 HIR::IdentifierPattern had all fields public new 8507a688834 Merge #837 new 4d70990b838 Add mssing mappings to HIR::Pattern new de1ed2e805c Merge #838 new 45edfc2b265 Add typechecking for match-expr new cd1814f9270 Add missing abstract method HIR::Pattern::get_locus() const new e8d91e9e082 Merge #840 new a8a345642a2 Merge #839 new 04c1f569745 add script to graph the changes over time new 52ee02f4012 Add support for enums on the match expression new b06de309ebd Merge #841 new 4c5ebc08e68 Merge #842 new f9b6c0caf81 HIR visitor refactor new 69f6be3ee48 Merge #846 new bfb7ef7fc82 HIR::ImplBlock items should mangle based from their canonic [...] new 41cdd949989 Add missing bitwise lang items for operator overloading new 5b369a61484 Fix ICE in generic subsitution of enums containing dataless [...] new 507dbac06d8 Add overflow checking on LiteralExpression new 6d0892636e9 Add support for wildcard patterns within MatchExprs new 34710b497e4 Add support for Wildcard pattern binding new 0b0deb4ee9d Merge #847 new 754af6737ab Merge #848 new e082b6cfd03 Merge #859 new bc27d113167 Merge #866 new 230b55bb532 Merge #868 new 03e56b51815 Merge #860 new f51d8fd5386 Add ArrayElemsType enum to differentiate between the types new 06c2a74f557 Add HIR lowering for FunctionQualifiers new 52780af6602 Redesign constant folding from the typechecking pass to the [...] new e9ffd4308d7 Add HIR::ExprType get_expression_type() const new 93554f3bce5 Add initial constant evaluation to blocks new b21caeb3af4 Merge #870 new 7d456b882a8 Track end locus of BlockExpr new b02824c6a79 Merge #874 new b4587fb281d Record correct location when compiling ADT types new a6c5dbadc3c Merge #879 new 0f9257baae8 Covariant types should respect the get_name to pretty print [...] new 120967b80be Add TraitItemKind to HIR TraitItems new dfb7f9c123a Add Mappings::iterate_trait_items helper new e77f051369e Extract AsyncConstStatus to be a shared enum between AST and HIR new d956be99334 Merge #881 #882 new d31c1bdaa8f Improve error message for failure in Method resolution new c11048a764d Merge #880 new 8c96ccceb27 Merge #885 new 6c9e57efa54 Merge #883 new ee794effe3b MethodResolution should respect the autoderef cycle new 2cce6b8919c Merge #873 new 21af490baa7 Merge commit '490e23032baaece71f2ec09fa1805064b150fbc2' [#247] new 3de87e620f8 Update GCC/Rust files per 'contrib/update-copyright.py --th [...] new c8a0c6eb4b9 Remove hack to handle forward declared items new 234816ac9d9 Remove bad assertion when resolving segments new 5f2973fe0e3 Merge #891 new 1fc2b540800 Merge #892 new 6508698504a Added location data to Match Arm and removed unused code new 959a076d6fb Remove unused include new a110fd152f3 Add deref_mut lang_item mappings new ebfbdf962fb Add -frust-cfg=value option for adding config options new 9346bddb100 Merge #897 #898 new bc7f518ac6f Merge #899 new 63429653c1a Change default crate name to example new 375d8b59007 Add helpers to access each segment of the canonical path new 63686e099bf Refactor Mangling API crate name should be part of the Cano [...] new a065f205c31 This updates our handling of canonical paths to contain the [...] new 2fbf9cb25e9 Track the cratenum for the respective canonical path new 631f7ae7b9d Merge #894 new 4c36c7c8d31 Fixup logic in canonical-path for impl-blocks new 6e5f8f76cbe Merge #900 new 46ee20dbdbb Fix enum variant discriminant values new f7f14de056e Merge #902 new d2a0fa7fc5f Add new RustIdent struct to track canonical-path and location info new 4d1ca35582e Apply the is_marked_for_strip check to the rest of the crate new 016db703cb0 Merge #904 new 5691503f11f GCC/Rust pieces of GCC upstream "Mass rename of C++ .c file [...] new 3e6f9c2150a Merge #903 new 9f36d99b406 Support cfg expansions predicates new 20ae6029915 Merge #906 new 5199ecb8519 Revert code formatting changes of "Added MSP430 target hook [...] new 7eef766dc5a Merge commit 'ff7aeceb6b3a476c3bac66a7f39a5ef4240206fc' [#2 [...] new b92a9b80faa Upated parameterised constuctor of MatchArm to take location data new 83bfbf0746c Merge #907 new 42f49fa7da2 Fix '-Wformat-diag' issue in 'TypeCheckPattern::visit (HIR: [...] new 9173f062a9f Add support for key = value pairs on -frust-cfg= new 2b1345a7365 selftest: Enable unit testing for the rust frontend new bc47ace0ec9 selftest: Move C specific tests in c_family_test() new 2423c89dee0 Merge #751 new 05cfe8f9fdc Merge #908 new 5c36d24c659 Merge #888 new 5619eea6f62 Merge #909 new b7cdd81dbc7 Refactor to_string from header to impl file new 257bf558274 Handle generic substitution on path expressions new 055ca34daa8 Merge #911 new 6d1ff568084 Merge #912 new c598bbbcc1e Support inline attribute by marking as DECL_DECLARED_INLINE_P new f6ba472caf4 Merge #916 new 859732e4d16 Remove AddressTakenContext new e49dd22fc23 Remove unsued functions in the GCC wrapper new 1b487d72cd2 Remove tree addressable flags from back-end local and fnpar [...] new e2823b6747b Merge #917 new b2aa172ff69 Refactor code to reuse a canonical way to compile functions [...] new df2dbbc0343 Remove error_mark_node wrappers from backend proxy class. new d21ae240496 Cleanup header usage and remove void_type wrapper new 5801e165b39 Fix warnings when including rust-target.h information new 4242d45d3d6 refactor named_constant_expression out of the backend class new 9023bb86873 Merge #918 new c0e5ca327ba Support deref_mut lang item during method resolution new b71cc526132 Merge #920 new 112f2841ee3 Support inline never and always options new c7275a7fb89 Merge #922 new 29e07e06bef macros: Add multiple macro syntax tests new 08dbb4e3226 macros: Add base for execution tests for macros new 330b265134a Merge #926 new 8848a76f83c rust-cfg: Quote option name when erroring out new 3ac17160c80 macromatch: Add location to abstract MacroMatch class new 85d78c1b8dd dockerfile: Install cargo-gccrs alongside gccrs new 733db624cf2 Merge #931 new a5272f389b0 Merge #934 #937 new 45ca46018f0 macrotranscriber: Add location info new d81ba63f482 Merge #933 new c1e72db48a0 macrorule: Add location information new 6a6c2170931 Merge #932 new 766a9002a3d frust-cfg: Only allow double quoted values new 752bf6c80a9 Merge #935 new 864df7901cf Add missing copyright header to lexer header new a026c166f07 Add mappings helpers for looking up macros definitions new ef626302f77 Add name-resolution helpers for looking up macros new 2c03f340272 Add initial support for macro expansion new 19c5dde80f2 When we expand a macro we must visit it to ensure any cfg e [...] new 4c70d7ec770 Support block expressions within macros new 37415eec774 Semicolon based macro invocation new ee4131396eb Removed Lambda Function within AST::PathPattern new 9fb06d66cef Merge #938 new 205a9cbf9e2 fn-arg: Add location on parameter name new c6daece6478 array-values: Add location info new d120c9db181 array-copy-init: Add location info new 63538444fbc struct-base: Add location info on `..` token new 9e524a7f5a5 closure-arg: Add location info on arg name new ef06769781a path-id: Add location info on path identifier new 425ebda2439 type-path-fn: Add location info on start of Fn token new 0e15b898391 struct pattern: Add location on struct name new fbe22e87687 Merge #940 new 5f35a8c6378 parser: Add `clear_errors()` method new 472c0a30574 macro-repetition: Rename enum variants to better reflect re [...] new 425905b49ae Merge #942 new 78cdc6ca310 Refactor type name resolution into their own .cc file new de08987dc79 Add name resolution to AST::SliceType new 755d0e5adf2 Refactor AST::ResolveExpr into its own cc file new 3dd4ce76a69 Add name resolution to range expressions new 31387e76090 Merge #944 new ad7e4bb6f8e macro-repetitions: Match repetitions properly new af789a70794 macros: Add test cases for repetitions new d0d4dcfdb43 macro: Add repetition execution test cases new 4e096b1f146 Merge #951 new 796465596fa Merge #950 new 737873ca873 ci: Do not allow unresolved test cases new 9b36f953661 testsuite: Add -fdump-tree-gimple to inline1.rs new 4e19c2f792e macro-invoc-lexer: Split implementation in its own file new 91aca2c19eb matched_fragment: Track and set fragment match amount new 133beb6d0f2 Merge #955 new 265c223766f Merge #964 #965 new ae1f91a6980 transcribe: Move substitute_metavar in its own function new 143aad62e16 substitute_repetition: Add parsing of repetition pattern new ded1aca9022 substitute_repetition: Substitute repetitions properly new 6db51e39363 subs_repetition: Add simple test cases new 87aeea25837 Refactor lang item mappings enum into its own header new bede8222987 Refactor mapping any lang items to be done during HIR lowering new 9bdc5462f21 Add mappings for range lang items new 865aa0aeb56 Add new Builtin attributes mappings new e0f261f1aea Merge #953 new 1f546e5e3ad match_repetition: Set the correct amount of matches for eac [...] new 92a62562c80 substitute_repetition: Correctly insert sub-fragments new 10de9cf4f37 Merge #956 new 0b46175fb8f macro: Add source containing builtin definitions new 48b3fe622e9 macros: Add optional builtin transcribers to MacroRulesDefinition new bf92a101226 Merge #969 new 986b8c3c602 builtins: Add file!() macro new 62ab4d6bf10 builtin_macros: Add make_string helper new 8cc50f2d23f builtin_macros: Add test for file!() new ac17ed5f5ed Add HIR lowering for range expressions new 1c3af63eaea Add missing range mapping lang item new a64983f86c8 Add typechecking for range expressions new fa21267280e Fix TyTy::ADTType is_equals to always check the variants fo [...] new 7d4845bc958 Add code generation for range expressions new a6dd2428453 Refactor ArrayIndexExpr code into implementation cc file new 833c439a501 Add boilerplate for the new SliceType new 0033df1a526 Refactor ArrayIndexExpr typechecking into cc impl file new 2975f114360 Add index and index_mut lang item mappings new 7d6579c2fad Fix ICE as infered is nullptr at this point new 3b3079eba5f Cleanup error handling on array index expression type resolution new 5d5396d5227 Refactor operator overloading code into cc file new d8351d9168f Decouple the HIR::OperatorExpr from resolving operator overloads new 22c6bca60a9 Add support for index lang item overloads new d3a4cf93b73 Merge #974 new b695eb8f0ba Merge #970 new dffb1adabd3 HIR Visitor refactoring new ed1a4dc33fa Merge #954 new 27be628911a macro-expand: Add SubstitutionCtx class in its own file new ede68b7ba64 lexer: Add ability to lex strings directly new 49dcecd3b6b frust-cfg: Use proper parser to parse key-value pairs new 12d156566af parser: Allow parsing macro invocations as statements new 58d1721529e macroinvocation: Only allow *stmt* visitors when semicoloned new e82b59dfc93 Merge #981 new c8499831fd6 macro-substitute: Do not substitute non-repetition fragment [...] new 82fc107e3d1 macros: Add test cases for recursive macro invocation new f7ff6020f8c lexer: Improve safety by taking ownership of the tokenized string new 6cf9f8c99c5 Merge #983 new 45eac568686 lexer: Add reference and warning documentation new e35da26d8ed Merge #988 new 17d4a75971a Remove gcc abstraction for expression statement new 57b50607988 Add missing accessor for attributes on external items new d6e1771291c must use attribute support new a498b2c5d6d macro-substitute: Do not substitute non-repetition fragment [...] new 25a33b0739d macros: Add test cases for recursive macro invocation new ab4533dab7a macros: Match repetition separator properly new 4fde21b37a2 macros: Substitute separator if necessary when expanding re [...] new 0c7e16e1258 macros: Add test cases for macro repetition separators new 3f2d5a720b2 Got rid of lambda in TyTy::FnPtr iterate_params new b4bd389c66a Merge #984 new d89c8ccf323 Merge #990 new e2bccf43ed1 Merge #985 new b82408fd6a1 Merge #986 new 366c53371ad Merge #991 new 7a3c935c0f2 Check if this constant item might already be compiled new be94ef6e2d7 Change unit-type to be an empty struct so that we do not di [...] new e00311aa9aa Update the deadcode pass to scan into modules and respect u [...] new 7820ff8b8b1 Remove old unused code pass this was too generic new 865b6090a8f Merge #992 new 08b7516191a macros: Parse macro patterns properly in repetition new dc2eab39525 macros: Add parentheses in repetition test case new d2a6a5eef46 macros: Allow any delimiters for invocation new 749a419a2e9 Refactor ABI options as part of HIR function qualifiers new 39c04258300 Merge #994 #997 new 77a49507446 Merge #999 new a08ac0c27ae Add support for the rust offset intrinsic new 94990a843b6 Refactor how we define simple intrinsics new 178cabde9f9 Add missing builtin mappings for never type new 9e23c29cd0f Add builtin unreachable intrinsic mapping new 796c978c489 Add builtin abort intrinsic new f0574451199 Add size_of intrinsic new 31413ebacfe Add missing canonicalization of slices and raw pointer types new a1b065050ba Add const_ptr lang item mappings new a620a228c1d Add missing type-checking for slice types new 894e9d29ada Handle generic Slices and Arrays new 9f73e827aba macros: Add abstraction around multiple matches new f02392c8b37 macros: Replace macro invocations with expanded nodes new 51c7cf4b974 Merge #998 new 1f4e2deb319 Merge #1002 new ddd087b0efa Merge #1003 new dbe59a31984 Merge #1007 new 6e64e6636ef Merge #1008 #1009 new 47ae663a3ef Add missing HIR lowering for SliceTypes new e076823eda8 Merge #1016 new 63a214618af attr-visitor: Split in its own source and header new c62e9eb5ee3 builtin-macros: Add more documentation for defining builtins new 040b2ec9a6b Add code generation for the slice type new a50fcbc2eb4 Merge #1017 new 8c88e8e0c9c Merge #1015 #1018 new d9a5bddb4c6 Added column!() macro new 41f402f0b19 Merge #1004 new 02887c88f57 macros: Do not try and re-expand if depth has exceeded recu [...] new 7d7bc2ce389 Fix memory corruption in generation of builtin functions new 2dfc1964777 Merge #1025 new 313e9890d85 parser: Allow parsing stmts without closing semicolon new b6b567171c1 attribute expansion: Fix spurious stripping of tail expression new 9411c061aae Refactor TypeBoundPredicate to be below the definition for [...] new 56a1571614a Keep track of substitution mappings as part of the TraitReference new 7ac9a76c898 Make TypeBoundPredicate a subclass of the SubstitutionRef new 21cf0e67a6f Add missing location info on GenericArgs new 8086790254d Fix unconstrained type parameter checks new bb234b080a5 Merge #1021 new 14b99bed080 ast: Add base Node class with get_ast_kind() function new b776c4953ca macros: Do not lower macro definitions to HIR new 1e873922f0d ast: Add Kind::MACRO_INVOCATION and cleanup fatal errors in [...] new 6e385d2f257 Fix bad copy-paste in can equal interface for pointer types new fe13ad49b1d Merge #1030 new 3ada3d8365b Merge #1022 #1033 new f6c86fc8cde Support placeholders becoming slices new e48bce446cc Merge #1027 #1032 new e30d07de5c8 parser: Handle -fsyntax-only properly new b7baee87956 Merge #1037 new 1a14348afef Merge #1035 new 1a2ef9cae90 macros: Add remaining context and improve parsing macro dispatch new 935b561e7fb macros: Add test cases for remaining expansion contexts new a7ef6f98be0 macros: Allow macro calls in trait implementations new 1bb9a29688a Merge #1029 new a64a5cf77c9 macros: Do not propagate parse errors in match repetitions new f8c550f7e19 macros: Only expand merged repetitions if they contain the [...] new 80d96902421 parser: Parse reserved keywords as valid fragments identifiers new 60d1fd533c1 Add a check for new warnings to the CI new afa451b311d Add initial support for unsized method resolution new 32894e69865 Merge #1042 new 651d9a77cec macros: Add helper debugging function for substituted tokens new 202e61bc2de Force 'LC_ALL=C' for all steps of '.github/workflows/ccpp.y [...] new 6ecd43c7797 Merge #1040 new 246fb48cbbb Force 'LC_ALL=C.UTF-8' for all steps of '.github/workflows/ [...] new 10ff5d5507f Merge 'Build logs' into 'Build' in '.github/workflows/ccpp. [...] new f91f6376522 Tune '.github/workflows/ccpp.yml:jobs.build-and-check', 'Ch [...] new cc6e405912c Merge #1041 new f0b5ac2e821 Document 'Continuous Integration', 'Compiler Diagnostics' i [...] new ef563818620 parser: Add better restrictions around semicolons in statements new fb886737e23 Merge #1047 new 1d34c120c47 Merge #1026 new 35ca6852008 macros: Add base functions to check for follow-set ambiguities new b9720caa100 Merge #1044 new eef1ee2638c Merge #1049 new 6821a642ab7 macros: Add remaining restrictions for follow-set restrictions new 85ffe83ad7b Fix '#include <algorithm>' [#159] new 7af3505c973 For use as 'std::unordered_map' key, provide 'std::hash' fo [...] new 90f938c2ece Merge #1056 #1057 new ff5f3005d0e Merge #1051 new c1cc931f97f ci: Add job for building gccrs with older gcc new 14b0472fa4c hir-path-probe: Fix miscompilation on gcc-4.8 new 3e5090608d7 macros: Add hints for follow-set restrictions new 8283724bc24 Merge #1052 new d859ab0146c macros: Allow repetitions of tokens in follow-set in follow-set new 912b04216d7 macros: Check follow-set restrictions on matcher's first delimiter new 5651331236d macros: Allow parsing :tt fragments new 3a90596517a Merge #1054 new 261c753e56c macros: implement include_bytes! and include_str! new 0fa882160df Merge #1043 #1064 new 89ad4f21f25 Merge #1062 new 7ea35487a21 macros: Allow checking past zeroable matches for follow-set [...] new 2249a4d5125 attributes: Allow stripping assignment expressions new 6c99a5a8f1a parser: Move outer attrs properly intoto AssignmentExpr new 7fa6e72b1a1 macros: Parse :meta properly new a7e72346922 Merge #1055 new 5a15694ee22 Merge #1063 new 1f8780be706 is_match_compatible: Fix warning of uninitialized delim_id [...] new 729bbacbd17 Merge #1066 new e8b9587d3a0 Merge #1045 new e824a0835b1 ci: Run tests with gccrs compiled under gcc-4.8 new bd1f435b231 Merge #1059 new cf94fd8d51f single_ast_node: Add TYPE kind new 229512d6628 single_ast_node: Fix typo in as_string() method new b6bbf1fa724 macro_transcriber: Add TYPE context and associated transcriber new 3413f632ec8 ast_fragment: Add take_type_fragment() method new 6bf428379d1 macros: Expand macro invocation properly in type contexts new f9c1a14dab4 Merge #1069 new 73532817fd6 macros: Allow transcribing of zero items new 9011184f38a Merge #1071 new 35570ae4104 macros: add compile_error! macro new 6d42548da9c rust-session-manager: fix an issue where ... new af14ad60568 rust-ast-full-test: fix a minor typo new 779de323f3c Merge #1083 new b829e7c0a21 Merge #1080 new 5559bdc8663 Emit loop initializer for repeat arrays new 83681c3990c gcc/rust/Make-lang.in: add missing rust compiler driver new da3d59db1f1 Merge #1087 new 46e0068fc01 options: Add -frust-edition flag and possible values new e43a5c5373b Merge #1092 new 6fb118f3e2e Support mangling *const ptr and slices like *const [T] new 8d3184e822a Ensure unsize method resolutions actually unsize new 595eb9c4118 Add known lang item const_slice_ptr mappings new b1f42c38f59 Add helper as_string for DefIds new fed5a41fb1c macros: add concat! macro new e5281ee490a Merge #1100 new 4413bc0cf8b Fix bad inherent overlap error new 3513fa38f2d Update gcc/rust/util/rust-mapping-common.h new 2669e80c17f Merge #1090 #1097 #1098 #1099 #1101 new 1b8d4521db3 Merge #1091 new 68458036c81 Disable failing testcase new e7e6527975d Add missing const for get_locus and helper to get used arguments new 0e7eef65567 Make the can equal interface more permissive with associated types new 69d6fddcbb9 Allow substitutions to be handled on primitive types withou [...] new 2a264a36932 hir: Cleanup Visibility struct new 7d806eba2b6 ast: lowering: Add translate_visibility() static function new 9f5d8a89738 ast: Translate visibilities properly when lowering AST nodes new 0e686c0fe01 Support Slices from rustc libcore 1.49.0 new 997894f6372 testsuite/rust: add a 10-second timeout for each compile test new e909e4fc7b2 testsuite/rust: add a xfail test case ... new 2fe4048f7f1 macros: fix an infinite loop ... new c1a022385f5 Merge #1086 new a5b38698aa4 Merge #1103 new 54495874388 hir: Add `Kind` enum to downcast safely new 8bf037fede0 privacy: Add base for privacy-related visitors new e01a8140613 privacy: reach: Rename ReachLevel enum new dfb5f548cee hir: Visibility: Add is_public() method new 23fc3ff7fe9 privacy: ctx: Add proper implementations for insert_reachab [...] new 7609dfc63e0 Add missing unify rules for inference variables new 3bb4d746a03 privacy: reachability: Add `maybe_get_vis_item` helper stat [...] new 6db5c9fb19f privacy: reachability: Add better implementation for StructStruct new d103151143a hir: StructField: Add `get_visibility()` method new be8f2ead95b privacy: reachability: Add base for visiting struct definitions new a376e1939e5 hir: Keep BaseKind enum inside the Node class new ece3809c505 privacy: Keep DefIds in reachability map instead new 415586f0e22 typectx: Mark lookup_type() method as const new 3058b55328a privacy: reachability: Visit all struct generic predicates new 1e5126022d8 privacy: reachability: Visit all types of a struct's public fields new c494f30766b Merge #1106 new 2076e69bf92 Merge #1108 new 7430791e0f7 Merge #1082 new 1a3f38a2b0b rust: Allow gccrs to build on x86_64-apple-darwin with clan [...] new e9ab95c0880 Merge #1109 new 649f6640c62 rust: Clang/macOS Testing new f50e9a27b26 rust-session-manager: set and validate crate name properly ... new 28769ea0ab8 testsuite/rust: adapt/fix the testcases ... new 1a7391d97ff rust-session-manager: address comments ... new addf65ddfa5 rust: Use -Otarget when building and logging warnings new a1965687748 Merge #1112 new 03cb435c190 visibility: Add create_private() static function new a125901c55e rust-session-manager: address more comments new c1639be8bb0 Merge #1114 new 497ee70b776 Merge #1111 new cdfb5b34ac2 privacy: reachability: Cleanup Struct definition visitor new ed904fefddd privacy: reachability: Add base visitor for items with gene [...] new 60324125c3d Merge #1088 new 1e6e4276966 macros: Add env! macro new 73e017f7cb8 Merge #1113 new d36a3c5752c Merge #1110 new 71f2cd57c6f privacy: reachability: wip: Update all base reach levels new 126f7aecdcd hir: Add `EnumItemKind` enum for EnumItem classes new c4443ca3b2e privacy: reachability: Visit all variants of an Enum and th [...] new a9c0649503f Move cfg!() macro to builtins new d17e0aa7695 Merge #1116 new ad9e185e15f Fix bad projection substitution new 042c8750245 Merge #1107 new f5f11bef14f testsuite/rust: extent xfail targets new e76b6399550 Merge #1118 new 27ad3813dcc Merge #1122 new e753fa4e363 macros: add include! macro new 82c045ecfea CI: do not push Docker image ... new f876cba554f macros: save included filename into session manager new 321be1b3c95 Merge #1096 new 5b14291b54f Merge #1124 new 5528001eca6 Fix ICE during HIR lowering of ExprWithBlock MatchExpr new 038677dd830 ast: lower: Split rust-lower-base in its own source file new c3a3e1053f4 Support pattern bindings within function signitures new 4152743451a Merge #1121 new f6e244dc0e7 Merge #1134 new dc57f4ced0d Merge #1137 new 14dbac9a8bb Merge #1138 new a1c34b478fe hir: improve doc attribute handling ... new 03ec66cf116 Remove bad has-minus flag which should be contained within [...] new 4eaec853037 Add AST::TuplePatternItems::TuplePatternItemType to differe [...] new 53ce1d5ac91 Add ExprStmt::ExprStmtType WITH_BLOCK and WITHOUT_BLOCK to [...] new c18257c7265 Add HIR Lowering for TuplePattern new 9a56a0d10d9 Add a test for the cfg!() macro new fc22f12c9c7 Merge #1119 new fe10ca37aba Handle parsing match arms with no comma new dd9e4c1e0ca Add name and type resolution for TuplePatterns new cb42c3674a5 Merge #1144 new 0d4fc557c7f Fix generic param redefined bug new 639b3d61ab1 Add missing coercion rule from array to slice new 243ef0dfe71 Merge #1139 new 16730054de5 backend: handle cold attribute new 7915329a0c5 Add support for isize and usize type-hints new f0b6dca3fcd Merge #1145 new 75ac2f6fc0a Merge #1147 new bfe8ffef866 privacy: Add ModuleVisibility class new e70aa7f2621 hir: Fix documentation on previously changed Visibility struct new ca59275cc9f privacy: Add base for visibility map of DefIds new 77afec780ae privacy: visibility: Add base for ModuleVisibility resolver new 7be856f7b6f privacy: visibility: Add resolving for "private" items new cae1e873392 privacy: visibility: Handle modules properly new 3e3c0660cba privacy: visibility: Insert enum/traits and their subitems [...] new d541ded4855 Merge #1148 new f6194707a66 backend: handle link_section attribute new c3a81139f72 privacy: visibility: Assert on module stack instead new b392376cc52 Merge #1154 new bdd1b86ccb8 privacy: ModuleVis: Constify accessor functions new 4337aea3be3 Merge #1155 new a936265bb0e Merge #1150 new 159ffebb20c privacy: visibility: Add remaining visitors for simple items new 1286acc34e8 Merge #1157 new 3001bb64cc2 resolver: Refactor Rib class in a source file new 8466c9b1626 resolver: Move Resolver methods into own source file new af7622f2198 backend: handle no_mangle attribute new a969ab61ade backend: address comments about no_mangle new 49c0eeb670e tests/attr_cold: fix a typo new e26b95f64a0 Following up on #1141. Implementing macro expansion or Comp [...] new f562d738ef9 Merge #1149 new bbbd15a4a13 Merge #1156 new 23db789ecb5 resolver: Move Scope methods into source file new d54ca716854 Merge #1160 new 2b1cb4ba869 Merge #1161 new 5536d363074 ast: SimplePath{Segment}: Add NodeId fields new d0c75495dda ast: Visibility: Add `has_path` method new e69e162462c Support inference of generic parameters on paths behind ref [...] new 1d19dd8a691 Fix nullptr when resolving the root of a path expression new b74044fb627 Merge #1164 new 3e01b6b2a87 ast: resolve: Move ResolveItem into its own source file new 461bf1369fa CI: catch malformed test cases new d780b204d84 Implement macro expansion in `IfExpr`, `IfExprConseqElse`, [...] new d7c5bbe6af7 Merge #1166 new ab845217887 Merge #1162 #1167 #1168 #1170 new 10427869f15 dockerfile: change the base image ... new b3d85dc842f ast: SimplePath: Remove default location parameter new 6f07a768928 mappings: Add mappings for SimplePath{Segment}s new 0ce3b067a84 Merge #1171 new 8b2e6da7395 Merge #1174 new d69dd650367 Merge #1176 new 40f2979b73b Fix bad name resolution of path with generic segments new ea38a59ee83 Fix regression in fix for #1173 new 57725b57e51 rust-session-manager: handle crate_name attribute new 60f7f998a21 Merge #1163 new 9a9bb44058a Merge #1184 new 10b01c305ff ast: ResolvePath: Move into its own source file new fd51331270e Support align and packed repr on structs new b4fa67403f3 parse: Add correct location to all public visibilities new 34c73a75cf0 ast: Add location info to MetaValueStr new ffb38df2eb3 ast: Add location info to MetaWord new 471cff253a1 ast: Add location info to remaining meta items new af48e2a3a15 Merge #1186 new 1ada076b932 Merge #1189 new 712ae2f173d Fix equality interface on TyTy::FnType new be158fc97f7 Complete refactor of generic traits handling new e500a4164f9 Refactor trait resolution code into cc file from header new bbf171c9d25 Fix ICE on missing TypeParam within type context new ad326924829 ast: resolve: Move ResolveItem into its own source file new d462ec452a1 privacy: visibility: Do not use SimplePaths this late new 0b91defe942 ast: resolve: Add source for ResolverBase new 821c7947bfd ast: resolve: Add SimplePathSeg -> CanonicalPath resolver new 06c5f54ccc1 ast: resolve: Add SimplePath path resolver new 7fe6bc1ba1a Add an assertion to avoid peeking when the stack is empty new ae085ac7b12 Remove unused parameter caller from generating Call expressions new 1c56e969a64 ast: resolve: Implement `resolve_visibility` method new 9cf744cbd76 Merge #1172 new 83e13db1fa1 Merge #1190 #1192 #1193 new ca7598514f5 Add missing type inferencing rules for arrays and slices new e09a5763203 Add support for transmute intrinsic new c0589ea7dbe ast: Resolver: Flatten use declarations to paths new 98e1de2d8fd ast: Resolver: Refactor ResolveRelativeTypePath in its own [...] new f8a137bd939 Merge #1194 new f38bf60c3ac Merge #1188 new 44c058c30dd Fix address expression to respect reference/pointer types new 7e576d70b6a Support recursive coercion sites new d6fb6246563 Add new as_name interface for Dynamic types new 5fe52462aa3 Code deduplication for expression and type expansions. new cf9d65a9136 Generic functions should not be TREE_PUBLIC new 01aa0cf2784 Update gcc/rust/expand/rust-attribute-visitor.cc new 27e562a2c07 Merge #1200 new fb136314f95 Merge #1191 new 694114ea956 Merge #1201 new 5aec7cbfa56 Merge #1199 new ca722fe423b Merge #1197 new 884b9366862 intrinsic: add breakpoint intrinsic new 48cad9e8aed Use correct format specifiers for unisnged HOST_WIDE_INT new ca75e756e80 Compile literal patterns for match expressions new aa372462f48 Compile matches on boolean expressions new 0472834ddf1 Preserve inside_loop context when compiling match new cb22cd9da3d intrinsic: add rotate_left and rotate_right intrinsic new 0c5a19dd1ce Replace SSH cloning with HTTPS cloning in README.md new aa5ab230819 Merge #1214 new 21b9e1226cf Merge #1206 #1209 #1211 #1212 #1213 new 74f4ee8d38f Take advantage of OBJ_TYPE_REF'S in dyn calls new 285aabdd3b2 Merge #1205 new 1ea83c404e8 ast: Lower SimplePaths properly new 52b5286a69d hir: SimplePath: Add location info new f5bceb67942 Fix size used in unsized adjustments new 88c20f5e1d5 privacy: Add base for resolving SimplePaths to Modules new af031b081fc Merge #1202 new a6f5bc60545 util: Add copyright header on make-unique.h new b088d47cdc1 util: Add Optional<T> wrapper class new c936fd32559 Merge #1217 new 41abd0fdb2f ast: lower: Refactor ASTLowerItem in its own source file new 9ea940e4dca Merge #1216 new 22966211a8d privacy: Add base for resolving SimplePaths to Modules new e0bbbbb056a vis: Fix issue when lowering AST::Visibility new 4393aabd073 hir: Handle RESTRICTED properly when converting a Visibilit [...] new 2df8cf57e62 privacy: Add base for pub(restricted) visitor and linter new 74e836599ce Merge #1215 new 224647d24a3 Ensure the coercion sites are applied correctly on unions new 0d8c2984436 Ensure we don't return error_mark_node for loop expressions new cb4d935508d Add new monomorphize_clone interface new 3b8f3e61394 Merge #1220 #1221 new 55346cc59b7 Destructure our generics, placeholers or projections during [...] new 16da547c6de macros: Error out when repeating metavars which refer to re [...] new dd5a7654d32 Merge #1222 #1223 #1225 new 140f6a698b4 Merge #1219 new 245215bf8d1 Lower IfLet expressions. new dd213da6a3b Fix match tests on 32bit systems new 8d828e4b301 Merge #1228 new d1a2508778a Assigning members to structures is a coercion site new ba3f9811192 Merge #1238 new 03c21a08eb4 Merge #1218 new a91b138bbc2 Implement name resolution for the IfLet expression. new 2959ff8e7dd macro: Add assertion to avoid undefined behavior new d2dcac6a0bf Change Artihmetic Operation to be a cast type operation new 2e65c14bef9 Allow cast of integers to pointers new c1ff79996ac Merge #1242 new f2aee09a0b7 Merge #1240 #1243 new 502c8a85975 typecheck: add is_primitive_type_kind helper new 5aa411c5372 Allow match on primitive types new d4434b511a4 Merge #1244 new effc63b892b optional: Allow the creation of Optional<T&> new 56b4aa48df9 mappings: Add module->children mappings new 172624a7f9c mappings: Store NodeIds for visibility_map new d374eb47de1 resolver: TopLevel: Build tree of child modules new 48fc2df91b0 privacy: Add base for privacy violation visitor new c31d0c5f78f ast: Add RangePatternBoundType and helpers new bd90e61b2b2 HIR: Add RangePatternBoundType and helpers new 26c832fcc2e resolve: Resolve range patterns new d01867d2f58 HIR: Lower range patterns new f9757a898a2 typecheck: type check range patterns new b1eb3e036c6 backend: Compile range patterns new e4213b9568a Merge #1248 new 8cad07cfd22 Merge #1246 new 4a4206c0176 Support extern-blocks defined within blocks new 7ebe376bd68 privacy: Handle calls to functions defined in previous ancestors new 6c0be487686 issue #1233: Do not rely on the endianness for testing new dba78989e55 privacy: PrivacyReporter: Add visitors for all expressions new 9e61c6eb220 Merge #1250 new ff37b816e74 Merge #1252 #1254 new e9d41c4ef9d Merge #1255 new 64a41cce917 mappings: Add reverse mappings from HirId -> NodeId new 3c31c11393b privacy: PrivacyReporter: Add type privacy checking on expl [...] new b0527990a14 privacy: PrivacyReporter: Handle builtin and unimplemented [...] new 5ad0ea3e0ed Merge #1258 new 39ae84825c5 Canonicalize types based on hashing than HirIds and TyTy equality new 75c9f9f61cb Marklive: support match expr new 93e59035536 Revert "Marklive: support match expr" new dccb3f8121e Marklive: support match expr new 55ec3454d0d Merge #1265 new 9204e7a1ac6 Merge #1267 new a647c005908 Make TyTy::BaseType::destructure recursive new c7008d3e254 Merge #1266 new cd39861da5e Fix Slice Type Layout new 63762cc243c Merge #1241 new bf6d540b104 Merge #1268 new ec9a03a03b5 type check new 25ff27b9752 Wrapup testing code within CHECKING_P guards new a369360b922 Reuse index_expr_ty type instead of type checking the index [...] new 986e8e75f0f Merge #1276 new d09b135116f Merge #1277 new d01ae2ab56b Remove old hack to handle type inferencing in untyped decal [...] new 79d977e759b Merge #1279 new 36c91efc86d Merge #1275 new 7f7efa4463d Remove inside_loop parameter from type resolution of stmts [...] new 4cfd6942c07 Str's have the same layout as [T] new d5c1531cc41 Merge #1278 new 3a95f28788d Add testcase to prove bug is fixed new 56634945fb2 Add build badges for marks build-farm new 1a04c501e41 const folding in gccrs: remove ConstCtx class. new 5c84a5ca514 Merge #1281 #1282 new a4455d8f522 Merge #1280 new 7a94948e65d Merge #1283 new b2fb51a2640 Marklive: support arrayindex new 79b14bdf165 ast: Dump: Add base for dump visitor new c2c26f0499b ast: Dump: Add Indent class usable with streams new 9a1ae921948 ast: Dump: Add pretty printing of functions new e009a46e226 docker: Add commit information to Docker image new 573b6298596 ast: Indent: Improve indent formatting performance new 998f1f73c26 Merge #1284 new fb2fc585fdc Reformat copyright header in rust-parse-impl.h new f6589ca957b Add name resolution to ForLoopExpr new 92f9eb46ec0 Add hir lowering to ForLoopExpr this will eventually all be [...] new 0866a4fbc6e Merge #1287 new fc6f6a7179d Add mappings for mut_ptr lang item new a89eb96d79e Update Reference and Pointer types equality interface new 91b16af14cb Fixup name canonicalization for impl blocks new a71fa22c4dc Merge #1288 new 8d1f5f99484 Add new mappings for items within a module new 664bd46f4cf Merge #1292 #1293 new 957914b4284 Merge #1290 #1291 #1294 new 2ad8ec6da7a ast: Dump InherentImpl new 4d021b8efb6 ast: Dump Traits properly new 9d81164aa04 Merge #1295
The 1941 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.