| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2016-07-14 | Remove irrelevant tests | Jeffrey Seyfried | -130/+1 | |
| 2016-07-14 | Implement `macro_rules!` placeholders and the macro scope map | Jeffrey Seyfried | -6/+27 | |
| 2016-07-14 | Instead of renaming, treat differently marked identifiers as unequal | Jeffrey Seyfried | -423/+7 | |
| 2016-07-12 | Clean up statement parsing without changing the semantics of `parse_stmt`. | Jeffrey Seyfried | -8/+1 | |
| 2016-07-06 | Auto merge of #34652 - jseyfried:fix_expansion_perf, r=nrc | bors | -4/+4 | |
| Fix expansion performance regression **syntax-[breaking-change] cc #31645** This fixes #34630 by reverting commit 5bf7970 of PR #33943, which landed in #34424. By removing the `Rc<_>` wrapping around `Delimited` and `SequenceRepetition` in `TokenTree`, 5bf7970 made cloning `TokenTree`s more expensive. While this had no measurable performance impact on the compiler's crates, it caused an order of magnitude performance regression on some macro-heavy code in the wild. I believe this is due to clones of `TokenTree`s in `macro_parser.rs` and/or `macro_rules.rs`. r? @nrc | ||||
| 2016-07-05 | Strip unconfigured items from `MultiModifier`-expanded AST | Jeffrey Seyfried | -1/+5 | |
| 2016-07-04 | Revert "Change `fold_tt` and `fold_tts` to take token trees by value ↵ | Jeffrey Seyfried | -4/+4 | |
| (instead of by reference)" This reverts commit 5bf7970ac70b4e7781e7b2f3816720aa62fac6fd. | ||||
| 2016-06-29 | Rollup merge of #34495 - jseyfried:only_ident_macro_invocations, r=eddyb | Manish Goregaokar | -1/+1 | |
| Forbid type parameters and global paths in macro invocations Fixes #28558. This is a [breaking-change]. For example, the following would break: ```rust macro_rules! m { () => { () } } fn main() { m::<T>!(); // Type parameters are no longer allowed in macro invocations ::m!(); // Global paths are no longer allowed in macro invocations } ``` Any breakage can be fixed by removing the type parameters or the leading `::` (respectively). r? @eddyb | ||||
| 2016-06-29 | Rollup merge of #34459 - jseyfried:expansion_cleanup, r=nrc | Manish Goregaokar | -19/+13 | |
| Miscellaneous macro expansion cleanup and groundwork r? @nrc | ||||
| 2016-06-29 | Treat `MultiDecorator`s as a special case of `MultiModifier`s | Jeffrey Seyfried | -78/+33 | |
| 2016-06-28 | cleanup: use `DummyResult` to implement `MacroGenerable::dummy` | Jeffrey Seyfried | -19/+13 | |
| 2016-06-27 | Forbid type parameters and global paths in macro invocations | Jeffrey Seyfried | -1/+1 | |
| 2016-06-26 | Rollup merge of #34436 - jseyfried:no_block_expr, r=eddyb | Jeffrey Seyfried | -10/+1 | |
| To allow these braced macro invocation, this PR removes the optional expression from `ast::Block` and instead uses a `StmtKind::Expr` at the end of the statement list. Currently, braced macro invocations in blocks can expand into statements (and items) except when they are last in a block, in which case they can only expand into expressions. For example, ```rust macro_rules! make_stmt { () => { let x = 0; } } fn f() { make_stmt! {} //< This is OK... let x = 0; //< ... unless this line is commented out. } ``` Fixes #34418. | ||||
| 2016-06-26 | Rollup merge of #34339 - jseyfried:thin_vec, r=petrochenkov,Manishearth | Jeffrey Seyfried | -4/+4 | |
| Generalize and abstract `ThinAttributes` to `ThinVec<Attribute>`. | ||||
| 2016-06-26 | Rollup merge of #34316 - jseyfried:refactor_ast_stmt, r=eddyb | Jeffrey Seyfried | -72/+52 | |
| Refactor away `ast::Decl`, refactor `ast::Stmt`, and rename `ast::ExprKind::Again` to `ast::ExprKind::Continue`. | ||||
| 2016-06-26 | Rollup merge of #33943 - jseyfried:libsyntax_cleanup, r=nrc | Jeffrey Seyfried | -39/+29 | |
| Miscellaneous low priority cleanup in `libsyntax`. | ||||
| 2016-06-26 | Rollup merge of #34385 - cgswords:tstream, r=nrc | Jeffrey Seyfried | -1/+1 | |
| syntax-[breaking-change] cc #31645 (Only breaking because ast::TokenTree is now tokenstream::TokenTree.) This pull request refactors TokenTrees into their own file as src/libsyntax/tokenstream.rs, moving them out of src/libsyntax/ast.rs, in order to prepare for an accompanying TokenStream implementation (per RFC 1566). | ||||
| 2016-06-25 | Rollup merge of #34403 - jonathandturner:move_liberror, r=alexcrichton | Jeffrey Seyfried | -5/+5 | |
| This PR refactors the 'errors' part of libsyntax into its own crate (librustc_errors). This is the first part of a few refactorings to simplify error reporting and potentially support more output formats (like a standardized JSON output and possibly an --explain mode that can work with the user's code), though this PR stands on its own and doesn't assume further changes. As part of separating out the errors crate, I have also refactored the code position portion of codemap into its own crate (libsyntax_pos). While it's helpful to have the common code positions in a separate crate for the new errors crate, this may also enable further simplifications in the future. | ||||
| 2016-06-25 | Rollup merge of #34213 - josephDunne:trait_item_macros, r=jseyfried | Jeffrey Seyfried | -20/+33 | |
| **syntax-[breaking-change]** cc #31645 New `TraitItemKind::Macro` variant This change adds support for macro expansion inside trait items by adding the new `TraitItemKind::Macro` and associated parsing code. | ||||
| 2016-06-23 | Remove field `expr` of `ast::Block` | Jeffrey Seyfried | -10/+1 | |
| 2016-06-23 | Address more travis errors | Jonathan Turner | -1/+1 | |
| 2016-06-23 | Move errors from libsyntax to its own crate | Jonathan Turner | -4/+4 | |
| 2016-06-23 | Auto merge of #34253 - jseyfried:improve_multi_modifiers, r=nrc | bors | -65/+34 | |
| Allow `MultiItemModifier`s to expand into zero or many items Fixes #34223. r? @nrc | ||||
| 2016-06-21 | Refactored tokentrees into their own files in preparation for tokenstreams. ↵ | cgswords | -1/+1 | |
| Modified tests to point to the new file now. | ||||
| 2016-06-20 | Remove unit tests | Jeffrey Seyfried | -258/+1 | |
| 2016-06-20 | Fix hygiene regression | Jeffrey Seyfried | -3/+2 | |
| 2016-06-18 | Auto merge of #34295 - jseyfried:cfg_decoration, r=eddyb | bors | -6/+6 | |
| Perform `cfg` attribute processing on decorator-generated items Fixes https://users.rust-lang.org/t/unused-attribute-warning-for-custom-derive-attribute/6180. r? @nrc | ||||
| 2016-06-19 | Generalize and abstract `ThinAttributes` | Jeffrey Seyfried | -4/+4 | |
| 2016-06-17 | Fix fallout | Jeffrey Seyfried | -72/+52 | |
| 2016-06-16 | Simplify gated cfg checking | Jeffrey Seyfried | -12/+14 | |
| 2016-06-16 | Auto merge of #34239 - jseyfried:fix_macro_use_scope_regression, r=nrc | bors | -19/+61 | |
| Revert a change in the scope of macros imported from crates to fix a regression Fixes #34212. The regression was caused by #34032, which changed the scope of macros imported from extern crates to match the scope of macros imported from modules. r? @nrc | ||||
| 2016-06-16 | Strip unconfigured nodes from decorator-generated AST | Jeffrey Seyfried | -4/+6 | |
| 2016-06-16 | Avoid expanding decorator-generated items twice | Jeffrey Seyfried | -2/+0 | |
| 2016-06-16 | Allow `MultiItemModifier`s to expand into zero or many items | Jeffrey Seyfried | -1/+1 | |
| 2016-06-16 | Refactor MultiModifier expansion | Jeffrey Seyfried | -65/+34 | |
| 2016-06-14 | Remove the type parameter from `syntax::visit::Visitor` | Jeffrey Seyfried | -3/+3 | |
| 2016-06-14 | Refactor away `WithAttrs` trait | Jeffrey Seyfried | -24/+15 | |
| 2016-06-14 | Change `fold_tt` and `fold_tts` to take token trees by value (instead of by ↵ | Jeffrey Seyfried | -4/+4 | |
| reference) | ||||
| 2016-06-14 | Refactor away field `ctxt` of `ast::Mac_` | Jeffrey Seyfried | -1/+0 | |
| 2016-06-13 | Auto merge of #33749 - jseyfried:fix_call_site_span, r=nrc | bors | -7/+1 | |
| Fix macro call site spans Fix macro call site spans. r? @nrc | ||||
| 2016-06-13 | Add support for macro expansion inside trait items | Joseph Dunne | -19/+31 | |
| 2016-06-12 | Load macros from `#[macro_use]` crates earlier in expansion | Jeffrey Seyfried | -10/+40 | |
| 2016-06-12 | Add method `visit_with` to `MacroGenerable` | Jeffrey Seyfried | -9/+21 | |
| 2016-06-11 | Strip `#[test]` nodes during `cfg` processing on non-test builds. | Jeffrey Seyfried | -0/+3 | |
| 2016-06-09 | Add comment and clean up `expand_annotatable` | Jeffrey Seyfried | -8/+6 | |
| 2016-06-09 | Load macros from `extern crate`s during expansion. | Jeffrey Seyfried | -19/+22 | |
| 2016-06-08 | Auto merge of #34010 - jseyfried:decorate_expanded, r=nrc | bors | -13/+14 | |
| Run decorators on expanded AST Fixes #32950. r? @nrc | ||||
| 2016-06-01 | Remove redundant `check_for_macros` AST pass. | Jeffrey Seyfried | -19/+0 | |
| 2016-06-01 | Run decorators on expanded AST. | Jeffrey Seyfried | -13/+14 | |
| 2016-05-28 | Fix macro call site spans | Jeffrey Seyfried | -7/+1 | |
