about summary refs log tree commit diff
path: root/src/librustc_front
AgeCommit message (Collapse)AuthorLines
2015-10-31Remove PatWildMultiVadim Petrochenkov-32/+11
2015-10-25syntax/rustc_front: Simplify VariantData::fieldsVadim Petrochenkov-32/+24
And use VariantData instead of P<VariantData> in Item_ and Variant_
2015-10-25rustc_privacy: Expand public node set, build exported node set more correctlyVadim Petrochenkov-0/+6
2015-10-17Auto merge of #29102 - petrochenkov:spanvis, r=alexcrichtonbors-5/+3
Closes https://github.com/rust-lang/rust/issues/28750 `Arm` and `Generics` don't have spans at all, so it's not a visitor's problem, `visit_struct_def` was fixed in https://github.com/rust-lang/rust/pull/28816
2015-10-16Auto merge of #29014 - petrochenkov:stability, r=brsonbors-625/+0
Stricter checking of stability attributes + enforcement of their invariants at compile time (+ removed dead file librustc_front/attr.rs) I intended to enforce use of `reason` for unstable items as well (it normally presents for new items), but it turned out too intrusive, many older unstable items don't have `reason`s. r? @aturon I'm studying how stability works and do some refactoring along the way, so it's probably not the last PR.
2015-10-16Provide span for visit_enum_defVadim Petrochenkov-5/+3
2015-10-15Auto merge of #28980 - nrc:unsafe-macros, r=@pnkfelixbors-2/+0
This is a [breaking change]. @brson could you do a Crater run with this PR please? Lets not land till Crater says its OK. This was discussed at https://internals.rust-lang.org/t/does-anyone-use-the-push-pop-unsafe-macros/2702
2015-10-13Comment on the purpose(s) of NodeId in VariantDataVadim Petrochenkov-0/+11
2015-10-13Merge VariantData and VariantData_Vadim Petrochenkov-42/+33
2015-10-13Fix rebase 2Vadim Petrochenkov-4/+6
2015-10-13Merge struct fields and struct kindVadim Petrochenkov-21/+53
2015-10-13Dict -> Struct, StructDef -> VariantData, def -> dataVadim Petrochenkov-24/+24
2015-10-13Provide span for visit_struct_def + remove some dead codeVadim Petrochenkov-23/+8
2015-10-13Remove now redundant NodeId from VariantVadim Petrochenkov-23/+15
2015-10-13Decouple structure kinds from NodeIdsVadim Petrochenkov-22/+21
2015-10-13Unify structures and enum variants in HIRVadim Petrochenkov-61/+22
2015-10-13Unify structures and enum variants in ASTVadim Petrochenkov-15/+7
2015-10-13Refactor attr::StabilityVadim Petrochenkov-625/+0
Stricter checking + enforcement of invariants at compile time
2015-10-12Remove the push_unsafe! and pop_unsafe! macros.Nick Cameron-2/+0
This is a [breaking change].
2015-10-12Properly set the MatchSource for for loopsNick Cameron-3/+8
2015-10-09review commentsNick Cameron-15/+155
2015-10-09rustfmt'ingNick Cameron-554/+660
2015-10-09Misc fixupsNick Cameron-8/+10
2015-10-09Add a commentNick Cameron-1/+50
2015-10-09Some cleanup of no longer used AST thingsNick Cameron-14/+3
2015-10-09Cache ids between lowering runsNick Cameron-12/+71
So that lowering is reproducible
2015-10-09Fix stabilityNick Cameron-24/+55
2015-10-09Move placement in desugaring to loweringNick Cameron-3/+103
2015-10-09if let and while letNick Cameron-19/+150
2015-10-09Move `for` loop desugaring to loweringNick Cameron-54/+344
2015-10-09Add a lowering contextNick Cameron-442/+448
2015-10-06rustfmt librustc_frontNick Cameron-1118/+1262
2015-10-03Check attribute usageSeo Sanghyeon-1/+0
2015-10-01Stop re-exporting AttrStyle's variants and rename them.Ms2ger-2/+2
2015-09-29Restore `if let`s replaced with `for`sVadim Petrochenkov-3/+3
2015-09-29Fill in some missing parts in the default HIR visitorVadim Petrochenkov-316/+229
2015-09-27Rollup merge of #28682 - apasel422:features, r=steveklabnikManish Goregaokar-1/+0
2015-09-26Remove unnecessary `#![feature]` attributesAndrew Paseltiner-1/+0
2015-09-26Auto merge of #28642 - petrochenkov:name3, r=nrcbors-33/+24
This PR removes random remaining `Ident`s outside of libsyntax and performs general cleanup In particular, interfaces of `Name` and `Ident` are tidied up, `Name`s and `Ident`s being small `Copy` aggregates are always passed to functions by value, and `Ident`s are never used as keys in maps, because `Ident` comparisons are tricky. Although this PR closes https://github.com/rust-lang/rust/issues/6993 there's still work related to it: - `Name` can be made `NonZero` to compress numerous `Option<Name>`s and `Option<Ident>`s but it requires const unsafe functions. - Implementation of `PartialEq` on `Ident` should be eliminated and replaced with explicit hygienic, non-hygienic or member-wise comparisons. - Finally, large parts of AST can potentially be converted to `Name`s in the same way as HIR to clearly separate identifiers used in hygienic and non-hygienic contexts. r? @nrc
2015-09-24Cleanup interfaces of Name, SyntaxContext and IdentVadim Petrochenkov-3/+0
Make sure Name, SyntaxContext and Ident are passed by value Make sure Idents don't serve as keys (or parts of keys) in maps, Ident comparison is not well defined
2015-09-24Remove the deprecated box(PLACE) syntax.Eduard Burtescu-27/+14
2015-09-23Remove random Idents outside of libsyntaxVadim Petrochenkov-30/+24
2015-09-22Fix rebaseVadim Petrochenkov-1/+1
2015-09-22Restore `fold_ident` and `visit_ident`Vadim Petrochenkov-13/+22
2015-09-22Use Names in the remaining HIR structures with exception of...Vadim Petrochenkov-35/+35
PathSegment, PatIdent, ExprWhile, ExprLoop, ExprBreak and ExprAgain - they need Idents for resolve
2015-09-22Use Names in path fragments and MacroDefVadim Petrochenkov-18/+20
2015-09-22Use Names in hir::{Field, ExprMethodCall, ExprField}Vadim Petrochenkov-39/+29
2015-09-22Use Names in HIR ItemsVadim Petrochenkov-58/+58
2015-09-22Use Names in HIR visitors and foldersVadim Petrochenkov-44/+46
2015-09-22Auto merge of #28364 - petrochenkov:usegate, r=alexcrichtonbors-12/+20
Closes https://github.com/rust-lang/rust/issues/28075 Closes https://github.com/rust-lang/rust/issues/28388 r? @eddyb cc @brson