about summary refs log tree commit diff
path: root/src/libsyntax/parse
AgeCommit message (Collapse)AuthorLines
2013-07-17librustc: Remove all uses of "copy".Patrick Walton-389/+523
2013-07-17librustc: Add a lint mode for unnecessary `copy` and remove a bunch of them.Patrick Walton-55/+41
2013-07-17Made ast::blk not use spanned<T> anymore.Michael Woerister-37/+32
2013-07-14Make TLS keys actually take up spaceAlex Crichton-1/+2
If the TLS key is 0-sized, then the linux linker is apparently smart enough to put everything at the same pointer. OSX on the other hand, will reserve some space for all of them. To get around this, the TLS key now actuall consumes space to ensure that it gets a unique pointer
2013-07-14Purge the last remnants of the old TLS apiAlex Crichton-13/+10
Closes #3273
2013-07-11auto merge of #7677 : alexcrichton/rust/tls-gc, r=pcwaltonbors-2/+2
cc #6004 and #3273 This is a rewrite of TLS to get towards not requiring `@` when using task local storage. Most of the rewrite is straightforward, although there are two caveats: 1. Changing `local_set` to not require `@` is blocked on #7673 2. The code in `local_pop` is some of the most unsafe code I've written. A second set of eyes should definitely scrutinize it... The public-facing interface currently hasn't changed, although it will have to change because `local_data::get` cannot return `Option<T>`, nor can it return `Option<&T>` (the lifetime isn't known). This will have to be changed to be given a closure which yield `&T` (or as an Option). I didn't do this part of the api rewrite in this pull request as I figured that it could wait until when `@` is fully removed. This also doesn't deal with the issue of using something other than functions as keys, but I'm looking into using static slices (as mentioned in the issues).
2013-07-11Remove all external requirements of `@` from TLSAlex Crichton-1/+1
Closes #6004
2013-07-10unnecessarily mutable variablesBrendan Cully-1/+1
2013-07-09Rename local_data methods/types for less keystrokesAlex Crichton-2/+2
2013-07-09Don't use static default methodJohn Barker-1/+0
- also removed redundant assignment to is_mutbl - updated copyright
2013-07-09Always eat up mut when parsing general args, fixes #7483John Barker-2/+2
2013-07-08Correct merge errorsNiko Matsakis-1/+1
2013-07-07remove some method resolve workaroundsDaniel Micay-1/+1
2013-07-07auto merge of #7615 : Aatch/rust/syntax-deshare, r=graydonbors-83/+91
In an ideal world, the AST would be completely sendable, this gets us a step closer. It removes the local heap allocations for `view_item`, `Path`, `Lifetime` `trait_ref` `OptVec<TyParamBounds>` and `Ty`. There are also a few other smaller changes I made as things went along.
2013-07-07Fix broken testsJames Miller-5/+5
2013-07-07De-share ast::TyJames Miller-18/+18
2013-07-07De-manage OptVec<TyParamBounds>James Miller-3/+3
2013-07-07De-share trait_refJames Miller-4/+4
Also, makes the pretty-printer use & instead of @ as much as possible, which will help with later changes, though in the interim has produced some... interesting constructs.
2013-07-07De-manage LifetimeJames Miller-10/+10
2013-07-07De-managed ast::PathJames Miller-37/+45
2013-07-07Stop allocating view_items with @James Miller-7/+7
2013-07-07auto merge of #7585 : Blei/rust/fix-circular-modules, r=huonwbors-2/+23
Fixes #7276
2013-07-05Change spans for sugary call expressionsSeo Sanghyeon-9/+8
2013-07-04libsyntax: fix infinite loop when recursively including modulesPhilipp Brüschweiler-2/+23
Fixes #7276
2013-06-30Change char::escape_{default,unicode} to take callbacks instead of allocatingAlex Crichton-2/+6
strings
2013-06-30auto merge of #7468 : cmr/rust/great_renaming, r=pcwaltonbors-8/+0
2013-06-29Remove mutability from unique boxes in the ASTAlex Crichton-4/+8
2013-06-29Warning cleanupCorey Richardson-8/+0
2013-06-29Use more deriving(IterBytes) in libsyntax.Ben Blum-3/+3
2013-06-29Change taskgroup key type to fn:Copy in prep for noncopyable stack closures.Ben Blum-1/+1
2013-06-28librustc: Fix merge fallout and test cases.Patrick Walton-1/+1
2013-06-28librustc: Fix merge fallout.Patrick Walton-1/+1
2013-06-28librustc: Rewrite reachability and forbid duplicate methods in type ↵Patrick Walton-251/+269
implementations. This should allow fewer symbols to be exported.
2013-06-28librustc: Remove the broken overloaded assign-ops from the language.Patrick Walton-24/+26
They evaluated the receiver twice. They should be added back with `AddAssign`, `SubAssign`, etc., traits.
2013-06-28libsyntax: Remove "copy" pattern bindings from the languagePatrick Walton-2/+7
2013-06-28libsyntax: Fix merge falloutPatrick Walton-2/+4
2013-06-28librustc: Disallow "mut" from distributing over bindings.Patrick Walton-2/+20
This is the backwards-incompatible part of per-binding-site "mut".
2013-06-28librustc: Rename Const to FreezePatrick Walton-1/+1
2013-06-26Infer default static/Owned bounds for unbounded heap fns/traits (#7264)Ben Blum-9/+15
2013-06-25auto merge of #7269 : luqmana/rust/drop, r=thestingerbors-1/+1
Finally rename finalize to drop. Closes #4332.
2013-06-25Change finalize -> drop.Luqman Aden-1/+1
2013-06-25great renaming propagation: syntaxCorey Richardson-39/+22
2013-06-25auto merge of #7254 : Blei/rust/intrinsic-overhaul, r=cmrbors-105/+99
This sets the `get_tydesc()` return type correctly and removes the intrinsic module. See #3730, #3475. Update: this now also removes the unused shape fields in tydescs.
2013-06-25auto merge of #7291 : alexcrichton/rust/static-mut, r=huonwbors-4/+6
This adds both `static mut` items and `static mut` foreign items. This involved changing far less code than I thought it was going to, but the tests seem to pass and the variables seem functional. I'm more than willing to write more tests, so suggestions are welcome! Closes #553
2013-06-25Warning policeJames Miller-1/+1
2013-06-23Support foreign 'static mut' variables as wellAlex Crichton-2/+3
2013-06-23Add 'static mut' items to the languageAlex Crichton-2/+3
2013-06-23Parse and typecheck (not kindcheck) bounds on trait paths.Ben Blum-33/+39
2013-06-23syntax: Remove unused tokensPhilipp Brüschweiler-105/+99
TyDesc, TyVisitor and intrinsic are not used anymore.
2013-06-23vec: remove BaseIter implementationDaniel Micay-5/+7
I removed the `static-method-test.rs` test because it was heavily based on `BaseIter` and there are plenty of other more complex uses of static methods anyway.