about summary refs log tree commit diff
path: root/src/libsyntax/ext
AgeCommit message (Collapse)AuthorLines
2013-03-05auto merge of #5231 : jbclements/rust/better-macro-error-message, r=graydonbors-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-05auto merge of #5179 : alexcrichton/rust/default-warn-unused-import, r=graydonbors-35/+1
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-04simplified msg (TMI on old one)John Clements-2/+2
2013-03-04better error message for macros with MOD_SEPsJohn Clements-5/+13
2013-03-04libsyntax: Implement `#[deriving_clone]`Patrick Walton-16/+288
2013-03-04Adding missing imports for tests, and gate off othersAlex Crichton-9/+0
2013-03-04Remove unused imports throughout src/Alex Crichton-26/+1
2013-03-03libsyntax: add &self to extensionsErick Tryzelaar-24/+34
2013-03-02auto merge of #5203 : erickt/rust/incoming, r=brsonbors-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-02librustc: Stop parsing `fn@`, `fn~`, and `fn&`Patrick Walton-3/+3
2013-03-02libsyntax: Remove `fn@`, `fn~`, and `fn&` from libsyntax. rs=defunPatrick Walton-26/+46
2013-03-02librustc: Forbid chained imports and fix the logic for one-level renaming ↵Patrick Walton-1/+2
imports
2013-03-02libsyntax: add some more explicit copies for vecs_implicitly_copyable)Erick Tryzelaar-7/+8
2013-03-02Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-2/+2
2013-03-01Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-6/+8
2013-03-01auto merge of #5165 : brson/rust/unstable, r=brsonbors-2/+2
r? This probably isn't controversial, but I want somebody else to sign off on it.
2013-03-01Avoid calling to_vec() unnecessarily in parser.Niko Matsakis-6/+8
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-01Rename core::private to core::unstable. #4743Brian Anderson-2/+2
2013-03-01Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-21/+44
2013-02-28Remove legacy object creation mode, and convert remaining uses of itNiko Matsakis-5/+3
2013-02-28Fix implicit leaks of imports throughout librariesAlex Crichton-9/+36
Also touch up use of 'pub' and move some tests around so the tested functions don't have to be 'pub'
2013-02-28librustc: Mark all type implementations public. rs=impl-publicityPatrick Walton-1/+1
2013-02-28Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-234/+348
2013-02-27auto merge of #5141 : nikomatsakis/rust/region-syntax-expl-lifetimes, ↵bors-190/+260
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-27Introduce lifetime declarations into the lists of type parameters.Niko Matsakis-190/+260
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-27Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-132/+526
2013-02-27librustc: Forbid `pub` or `priv` before trait implementationsPatrick Walton-9/+9
2013-02-26libsyntax: add some more explicit copiesErick Tryzelaar-12/+21
2013-02-26libsyntax: remove vecs_implicitly_copyable from the syntax extensionsErick Tryzelaar-124/+151
2013-02-26auto merge of #5120 : jbclements/rust/macros-have-scope, r=pcwaltonbors-105/+506
r? After this patch, macros declared in a module, function, or block can only be used inside of that module, function or block, with the exception of modules declared with the #[macro_escape] attribute; these modules allow macros to escape, and can be used as a limited macro export mechanism. This pull request also includes miscellaneous comments, lots of new test cases, a few renamings, and a few as-yet-unused data definitions for hygiene.
2013-02-26typo-fixing and name-changesJohn Clements-15/+13
2013-02-26Macros now leave scopeJohn Clements-89/+488
Macro scope is now delimited by function, block, and module boundaries, except for modules that are marked with #[macro_escape], which allows macros to escape.
2013-02-26Adds (more) test cases for auto_encode.John Clements-16/+20
2013-02-26libsyntax: Remove a mutable field from the tests. rs=demutingPatrick Walton-4/+4
2013-02-26libsyntax: change token::to_str to take &TokenErick Tryzelaar-2/+2
2013-02-26libsyntax: change attr::parse_seq_* to take &TokenErick Tryzelaar-7/+7
2013-02-25libsyntax: add some explicit copiesErick Tryzelaar-21/+37
2013-02-25libsyntax: change expect to take &token::TokenErick Tryzelaar-2/+2
2013-02-25libsyntax: change eat to take a &tokenErick Tryzelaar-1/+1
2013-02-25libsyntax: is_keyword should take a &~strErick Tryzelaar-2/+2
2013-02-25libsyntax: progress on making syntax::visit vecs_implicitly_copyable-freeErick Tryzelaar-62/+69
2013-02-25libsyntax: convert visit to pass ty_params by referenceErick Tryzelaar-35/+50
2013-02-25libsyntax: add explicit modes where required to copy strs/vecsErick Tryzelaar-73/+103
2013-02-25libsyntax: Convert ast::attribute_ to store a @meta_itemErick Tryzelaar-6/+6
2013-02-22libsyntax: De-mut the parser. rs=demutingPatrick Walton-29/+27
2013-02-22libsyntax: De-mut the macro parser. rs=demutingPatrick Walton-12/+12
2013-02-22libsyntax: De-mut the pipe compilerPatrick Walton-36/+38
2013-02-22auto merge of #5081 : brson/rust/pipes, r=pcwaltonbors-21/+23
r?
2013-02-21auto merge of #5076 : pcwalton/rust/demuting, r=pcwaltonbors-14/+14
2013-02-21core: Extract comm from pipes. #4742Brian Anderson-21/+23