| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2013-03-05 | core: convert vec::{last,last_opt} to return references | Erick Tryzelaar | -3/+3 | |
| 2013-03-05 | auto merge of #5234 : pcwalton/rust/equiv, r=pcwalton | bors | -2/+5 | |
| r? @nikomatsakis | ||||
| 2013-03-05 | libsyntax: Separate multiple inherited traits with `+` | Patrick Walton | -2/+5 | |
| 2013-03-05 | auto merge of #5231 : jbclements/rust/better-macro-error-message, r=graydon | bors | -5/+13 | |
| Macro invocations with path separators (e.g. foo::bar!()) now produce a sensible error message, rather than an assertion failure. Also added compile-fail test case. Fixes #5218 ? | ||||
| 2013-03-05 | Update region inference for traits so that a method with | Niko Matsakis | -1/+9 | |
| 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 | -14/+14 | |
| A small step towards fixing #2827 | ||||
| 2013-03-05 | auto merge of #5179 : alexcrichton/rust/default-warn-unused-import, r=graydon | bors | -80/+5 | |
| I've found that unused imports can often start cluttering a project after a long time, and it's very useful to keep them under control. I don't like how Go forces a compiler error by default and it can't be changed, but I certainly want to know about them so I think that a warn is a good default. Now that the `unused_imports` lint option is a bit smarter, I think it's possible to change the default level to warn. This commit also removes all unused imports throughout the compiler and libraries (500+). The only odd things that I ran into were that some `use` statements had to have `#[cfg(notest)]` or `#[cfg(test)]` based on where they were. The ones with `notest` were mostly in core for modules like `cmp` whereas `cfg(test)` was for tests that weren't part of a normal `mod test` module. | ||||
| 2013-03-04 | simplified msg (TMI on old one) | John Clements | -2/+2 | |
| 2013-03-04 | better error message for macros with MOD_SEPs | John Clements | -5/+13 | |
| 2013-03-04 | libsyntax: Implement `#[deriving_clone]` | Patrick Walton | -16/+288 | |
| 2013-03-04 | Adding missing imports for tests, and gate off others | Alex Crichton | -14/+4 | |
| 2013-03-04 | Remove unused imports throughout src/ | Alex Crichton | -66/+1 | |
| 2013-03-03 | libsyntax: deny deprecated_self in libsyntax | Erick Tryzelaar | -6/+10 | |
| 2013-03-03 | libsyntax: add &self to extensions | Erick Tryzelaar | -24/+34 | |
| 2013-03-03 | libsyntax: add &self to parser methods | Erick Tryzelaar | -261/+303 | |
| 2013-03-03 | replace option::iter with a BaseIter impl | Daniel Micay | -14/+14 | |
| 2013-03-02 | auto merge of #5203 : erickt/rust/incoming, r=brson | bors | -7/+8 | |
| My merges for #5143 missed a couple other copies. This patch corrects this, and gets stage0 to compile libsyntax with `#[deny(vecs_implicitly_copyable)]`. stage1 still fails though. | ||||
| 2013-03-02 | librustc: Stop parsing `fn@`, `fn~`, and `fn&` | Patrick Walton | -71/+6 | |
| 2013-03-02 | libsyntax: Remove `fn@`, `fn~`, and `fn&` from libsyntax. rs=defun | Patrick Walton | -194/+181 | |
| 2013-03-02 | librustc: Forbid chained imports and fix the logic for one-level renaming ↵ | Patrick Walton | -5/+5 | |
| imports | ||||
| 2013-03-02 | libsyntax: add some more explicit copies for vecs_implicitly_copyable) | Erick Tryzelaar | -7/+8 | |
| 2013-03-02 | Merge remote-tracking branch 'remotes/origin/incoming' into incoming | Erick Tryzelaar | -29/+21 | |
| 2013-03-02 | auto merge of #5137 : yjh0502/rust/empty_struct, r=nikomatsakis | bors | -11/+7 | |
| 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 | auto merge of #5193 : sethpink/rust/struct-tup-pp, r=catamorphism | bors | -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 | -18/+29 | |
| 2013-03-02 | Remove REC, change related tests/docs | Jihyun Yu | -11/+7 | |
| 2013-03-01 | auto merge of #5165 : brson/rust/unstable, r=brson | bors | -2/+2 | |
| r? This probably isn't controversial, but I want somebody else to sign off on it. | ||||
| 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 | Avoid calling to_vec() unnecessarily in parser. | Niko Matsakis | -17/+27 | |
| Also, rename the OptVec-to-vector conversion method to opt_vec::take_vec() and convert from a method into a fn because I fear strange bugs. | ||||
| 2013-03-01 | Rename core::private to core::unstable. #4743 | Brian Anderson | -2/+2 | |
| 2013-03-01 | librustc: "APL2" -> "ASL2". rs=license-fix | Patrick Walton | -1/+1 | |
| 2013-03-01 | Merge remote branch 'sevrak/issue-5164' into incoming | Patrick Walton | -1/+2 | |
| 2013-03-01 | Merge remote-tracking branch 'remotes/origin/incoming' into incoming | Erick Tryzelaar | -143/+188 | |
| 2013-02-28 | Remove legacy object creation mode, and convert remaining uses of it | Niko Matsakis | -114/+117 | |
| 2013-02-28 | Fix implicit leaks of imports throughout libraries | Alex Crichton | -15/+56 | |
| Also touch up use of 'pub' and move some tests around so the tested functions don't have to be 'pub' | ||||
| 2013-02-28 | librustc: Mark all type implementations public. rs=impl-publicity | Patrick Walton | -2/+2 | |
| 2013-02-28 | Merge remote-tracking branch 'remotes/origin/incoming' into incoming | Erick Tryzelaar | -1/+5 | |
| 2013-02-28 | Merge remote-tracking branch 'remotes/origin/incoming' into incoming | Erick Tryzelaar | -569/+930 | |
| 2013-02-28 | Fix license attribute on crates | sevrak | -1/+2 | |
| 2013-02-27 | auto merge of #5155 : bstrie/rust/dedrop, r=pcwalton | bors | -1/+5 | |
| This removes all but 6 uses of `drop {}` from the entire codebase. Removing any of the remaining uses causes various non-trivial bugs; I'll start reporting them once this gets merged. | ||||
| 2013-02-27 | auto merge of #5141 : nikomatsakis/rust/region-syntax-expl-lifetimes, ↵ | bors | -488/+802 | |
| r=nikomatsakis 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 r? @graydon | ||||
| 2013-02-27 | Introduce lifetime declarations into the lists of type parameters. | Niko Matsakis | -488/+802 | |
| 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-27 | Turn old `drop` blocks into `Drop` traits | Ben Striegel | -1/+5 | |
| 2013-02-27 | Merge remote-tracking branch 'remotes/origin/incoming' into incoming | Erick Tryzelaar | -242/+739 | |
| 2013-02-27 | librustc: Forbid `pub` or `priv` before trait implementations | Patrick Walton | -59/+73 | |
| 2013-02-27 | libsyntax: Forbid mutable vectors. rs=demuting | Patrick Walton | -0/+15 | |
| 2013-02-27 | libsyntax: Forbid `~mut` and `~const`. rs=demuting | Patrick Walton | -2/+6 | |
| 2013-02-26 | libsyntax: add some more explicit copies | Erick Tryzelaar | -91/+160 | |
| 2013-02-26 | libsyntax: add some explicit refs | Erick Tryzelaar | -11/+10 | |
| 2013-02-26 | libsyntax: remove vecs_implicitly_copyable from the syntax extensions | Erick Tryzelaar | -124/+151 | |
