| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2013-03-12 | Parse inline assembly. | Luqman Aden | -0/+8 | |
| 2013-03-11 | auto merge of #5304 : jld/rust/const-adjustments, r=graydon | bors | -0/+5 | |
| These changes make const translation use adjustments (autodereference, autoreference, bare-fn-to-closure), like normal code does, replacing some ad-hoc logic that wasn't always right. As a convenient side-effect, explicit dereference (both of pointers and of newtypes) is also supported in const expressions. There is also a “bonus fix” for a bug in the pretty-printer exposed by one of the added tests. | ||||
| 2013-03-11 | librustc: Lint the old `drop` destructor notation off | Patrick Walton | -27/+2 | |
| 2013-03-11 | librustc: Replace all uses of `fn()` with `&fn()`. rs=defun | Patrick Walton | -2/+2 | |
| 2013-03-11 | Implement vector destructuring from tail | Seo Sanghyeon | -5/+11 | |
| 2013-03-09 | Don't print addr_of(addr_of(e)) as `&&e`, which means something else. | Jed Davis | -0/+5 | |
| 2013-03-09 | Remove @ast::Region and replace with @ast::Lifetime. | Niko Matsakis | -33/+26 | |
| Modify pretty-printer to emit lifetimes and fix a few minor parser bugs that this uncovered. | ||||
| 2013-03-08 | syntax: Remove uses of DVec | Alex Crichton | -4/+3 | |
| 2013-03-07 | librustc: Stop parsing `assert`. | Patrick Walton | -4/+0 | |
| 2013-03-07 | librustc: Convert all uses of `assert` over to `fail_unless!` | Patrick Walton | -4/+4 | |
| 2013-03-07 | librustc: Remove record patterns from the compiler | Patrick Walton | -19/+0 | |
| 2013-03-07 | libsyntax: Remove struct literal expressions from the compiler | Patrick Walton | -16/+0 | |
| 2013-03-07 | librustc: Remove structural record types from the compiler | Patrick Walton | -14/+0 | |
| 2013-03-06 | patch up pretty printing of things with both lifetime and type parameters | Niko Matsakis | -0/+1 | |
| 2013-03-06 | Improve error messages when illegal lifetimes are used | Niko Matsakis | -0/+4 | |
| 2013-03-06 | Add manual &self/ and &static/ and /&self declarations that | Niko Matsakis | -2/+2 | |
| are currently inferred. New rules are coming that will require them to be explicit. All add some explicit self declarations. | ||||
| 2013-03-06 | Fix a bug with region-parameterized enums etc where trans considered | Niko Matsakis | -1/+1 | |
| them to be non-monomorphic. Merely having lifetime parameters is not enough to qualify for that status. Fixes #5243. | ||||
| 2013-03-05 | libsyntax: Separate multiple inherited traits with `+` | Patrick Walton | -1/+4 | |
| 2013-03-05 | Update region inference for traits so that a method with | Niko Matsakis | -1/+0 | |
| explicit self doesn't incorrectly cause the entire trait to be tagged as being region-parameterized. Fixes #5224. | ||||
| 2013-03-05 | auto merge of #5212 : thestinger/rust/iter, r=graydon | bors | -6/+6 | |
| A small step towards fixing #2827 | ||||
| 2013-03-04 | Remove unused imports throughout src/ | Alex Crichton | -4/+0 | |
| 2013-03-03 | replace option::iter with a BaseIter impl | Daniel Micay | -6/+6 | |
| 2013-03-02 | librustc: Stop parsing `fn@`, `fn~`, and `fn&` | Patrick Walton | -11/+0 | |
| 2013-03-02 | libsyntax: Remove `fn@`, `fn~`, and `fn&` from libsyntax. rs=defun | Patrick Walton | -3/+3 | |
| 2013-03-02 | Merge remote-tracking branch 'remotes/origin/incoming' into incoming | Erick Tryzelaar | -17/+13 | |
| 2013-03-02 | auto merge of #5137 : yjh0502/rust/empty_struct, r=nikomatsakis | bors | -1/+1 | |
| The fix is straight-forward, but there are several changes while fixing the issue. 1) disallow `mut` keyword when making a new struct In code base, there are following code, ```rust struct Foo { mut a: int }; let a = Foo { mut a: 1 }; ``` This is because of structural record, which is deprecated corrently (see issue #3089) In structural record, `mut` keyword should be allowd to control mutability. But without structural record, we don't need to allow `mut` keyword while constructing struct. 2) disallow structural records in parser level This is related to 1). With structural records, there is an ambiguity between empty block and empty struct To solve the problem, I change parser to stop parsing structural records. I think this is not a problem, because structural records are not compiled already. Misc. issues There is an ambiguity between empty struct vs. empty match stmt. with following code, ```rust match x{} {} ``` Two interpretation is possible, which is listed blow ```rust match (x{}) {} // matching with newly-constructed empty struct (match x{}) {} // matching with empty enum(or struct) x // and then empty block ``` It seems that there is no such code in rust code base, but there is one test which uses empty match statement: https://github.com/mozilla/rust/blob/incoming/src/test/run-pass/issue-3037.rs All other cases could be distinguished with look-ahead, but this can't be. One possible solution is wrapping with parentheses when matching with an uninhabited type. ```rust enum what { } fn match_with_empty(x: what) -> ~str { match (x) { //use parentheses to remove the ambiguity } } ``` | ||||
| 2013-03-02 | Remove REC, change related tests/docs | Jihyun Yu | -1/+1 | |
| 2013-03-02 | Fix some struct-tuple def prettyprint issues | Seth Pink | -16/+12 | |
| - Removed space between struct name and parentheses - Fixed indentation of the rest of the file (missing end) - Don't print parentheses for structs with no fields - Added test | ||||
| 2013-03-01 | Merge remote-tracking branch 'remotes/origin/incoming' into incoming | Erick Tryzelaar | -2/+5 | |
| 2013-02-28 | Fix implicit leaks of imports throughout libraries | Alex Crichton | -2/+5 | |
| Also touch up use of 'pub' and move some tests around so the tested functions don't have to be 'pub' | ||||
| 2013-02-28 | Merge remote-tracking branch 'remotes/origin/incoming' into incoming | Erick Tryzelaar | -52/+76 | |
| 2013-02-27 | Introduce lifetime declarations into the lists of type parameters. | Niko Matsakis | -39/+63 | |
| Major changes are: - replace ~[ty_param] with Generics structure, which includes both OptVec<TyParam> and OptVec<Lifetime>; - the use of syntax::opt_vec to avoid allocation for empty lists; cc #4846 | ||||
| 2013-02-26 | libsyntax: remove vecs_implicitly_copyable from the printer | Erick Tryzelaar | -22/+23 | |
| 2013-02-26 | libsyntax: change token::to_str to take &Token | Erick Tryzelaar | -2/+2 | |
| 2013-02-25 | libsyntax: progress on making syntax::visit vecs_implicitly_copyable-free | Erick Tryzelaar | -34/+34 | |
| 2013-02-25 | libsyntax: Convert ast::attribute_ to store a @meta_item | Erick Tryzelaar | -1/+1 | |
| 2013-02-21 | Get rid of structural records in libsyntax and the last bit in librustc. | Luqman Aden | -4/+5 | |
| 2013-02-20 | librustc: Separate most trait bounds with '+'. rs=plussing | Patrick Walton | -1/+1 | |
| 2013-02-19 | auto merge of #4999 : erickt/rust/incoming, r=brson | bors | -22/+40 | |
| This patch series is doing a couple things with the ultimate goal of removing `#[allow(vecs_implicitly_copyable)]`, although I'm not quite there yet. The main change is passing around `@~str`s in most places, and using `ref`s in others. As far as I could tell, there are no performance changes with these patches, and all the tests pass on my mac. | ||||
| 2013-02-19 | convert ast::meta_items to take @~strs | Erick Tryzelaar | -3/+3 | |
| 2013-02-19 | convert syntax::attr to use @~strs | Erick Tryzelaar | -4/+4 | |
| 2013-02-19 | libsyntax: make enum variants take refs | Erick Tryzelaar | -17/+35 | |
| 2013-02-19 | auto merge of #5002 : catamorphism/rust/one-tuples, r=graydon | bors | -0/+9 | |
| r? @graydon - This is for greater uniformity (for example, macros that generate tuples). rustc already supported 1-tuple patterns, but there was no way to construct a 1-tuple term. @graydon , as far as your comment on #4898 - it did turn out to be solvable inside the macro (since @luqmana already fixed it using structs instead), but I still think it's a good idea to allow 1-tuples, for uniformity. I don't think anyone is likely to trip over it, and I'm not too worried that it changes the amount of ambiguity. | ||||
| 2013-02-18 | rustc: For one-tuples, make parsing and printing the type work | Tim Chevalier | -0/+3 | |
| and add a test to reflect-visit-data | ||||
| 2013-02-17 | libsyntax: Update view_item_use/import to reflect actual usage | Luqman Aden | -2/+2 | |
| 2013-02-17 | syntax: Allow 1-tuple expressions | Tim Chevalier | -0/+6 | |
| This is for greater uniformity (for example, macros that generate tuples). rustc already supported 1-tuple patterns, but there was no way to construct a 1-tuple term. | ||||
| 2013-02-13 | Remove die!, raplace invocations with fail! Issue #4524 pt 3 | Nick Desaulniers | -8/+8 | |
| 2013-02-13 | libsyntax: Pretty print using the new impl syntax. r=brson | Patrick Walton | -2/+4 | |
| 2013-02-07 | librustc: Lots of de-muting. rs=demuting | Patrick Walton | -155/+170 | |
| 2013-02-07 | Make ~fn non-copyable, make &fn copyable, split barefn/closure types, | Niko Matsakis | -54/+56 | |
| correct handling of moves for struct-record update. Part of #3678. Fixes #2828, #3904, #4719. | ||||
