| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2017-01-06 | rustc: Stabilize the `proc_macro` feature | Alex Crichton | -1/+0 | |
| This commit stabilizes the `proc_macro` and `proc_macro_lib` features in the compiler to stabilize the "Macros 1.1" feature of the language. Many more details can be found on the tracking issue, #35900. Closes #35900 | ||||
| 2016-12-17 | Auto merge of #38205 - jseyfried:fix_module_directory_regression, r=eddyb | bors | -1/+1 | |
| macros: fix the expected paths for a non-inline module matched by an `item` fragment Fixes #38190. r? @nrc | ||||
| 2016-12-07 | macros: fix the expected paths for a non-inline module matched by an `item` ↵ | Jeffrey Seyfried | -1/+1 | |
| fragment. | ||||
| 2016-12-06 | annotate stricter lifetimes on LateLintPass methods to allow them to forward ↵ | Oliver Schneider | -1/+1 | |
| to a Visitor | ||||
| 2016-11-30 | Support paths in macro invocations. | Jeffrey Seyfried | -6/+1 | |
| 2016-11-22 | Start warning cycle. | Jeffrey Seyfried | -1/+1 | |
| 2016-11-22 | Clean up directory ownership semantics. | Jeffrey Seyfried | -9/+15 | |
| 2016-11-21 | Use `Symbol` instead of `InternedString` in the AST, HIR, and various other ↵ | Jeffrey Seyfried | -1/+1 | |
| places. | ||||
| 2016-11-20 | Move `syntax::util::interner` -> `syntax::symbol`, cleanup. | Jeffrey Seyfried | -3/+4 | |
| 2016-11-20 | Refactor `MetaItemKind` to use `Name`s instead of `InternedString`s. | Jeffrey Seyfried | -3/+3 | |
| 2016-11-20 | Refactor away `ast::Attribute_`. | Jeffrey Seyfried | -2/+2 | |
| 2016-11-17 | Resolve imports during expansion. | Jeffrey Seyfried | -2/+11 | |
| 2016-11-11 | Change implementation of syntax::util::SmallVector to use ↵ | Mark-Simulacrum | -7/+7 | |
| data_structures::SmallVec. | ||||
| 2016-11-11 | Auto merge of #37246 - goffrie:no-loop, r=jseyfried | bors | -1/+3 | |
| Don't spin expanding stmt macros. If we can't make progress when parsing a macro expansion as a statement then we should just bail. This alleviates the symptoms shown in e.g. #37113 and #37234 but it doesn't fix the problem that parsing invalid enum bodies (and others) leaves the parser in a crappy state. I'm not sold on this strategy (checking `tokens_consumed`), so if anyone has a better idea, I'm all ears! | ||||
| 2016-10-29 | Move `CrateConfig` from `Crate` to `ParseSess`. | Jeffrey Seyfried | -4/+1 | |
| 2016-10-26 | Don't spin expanding stmt macros. | Geoffry Song | -1/+3 | |
| If we can't make progress when parsing a macro expansion as a statement then we should just bail. This alleviates the symptoms shown in e.g. #37113 but it doesn't fix the problem that parsing invalid enum bodies (and others) leaves the parser in a crappy state. | ||||
| 2016-10-19 | Improve `$crate`. | Jeffrey Seyfried | -1/+1 | |
| 2016-10-15 | Use the macro namespace for custom derives. | Jeffrey Seyfried | -1/+14 | |
| 2016-10-15 | Refactor `syntax::ext::base::Resolver::resolve_invoc`. | Jeffrey Seyfried | -1/+11 | |
| 2016-10-11 | Add support for undetermined macro invocations. | Jeffrey Seyfried | -3/+26 | |
| 2016-10-11 | Merge branch 'persistent_macro_scopes' into cleanup_expanded_macro_use_scopes | Jeffrey Seyfried | -30/+19 | |
| 2016-10-07 | Cleanup `depth`s. | Jeffrey Seyfried | -7/+9 | |
| 2016-10-07 | Refactor away `ext::expand::{expand_crate, expand_crate_with_expander}`. | Jeffrey Seyfried | -19/+10 | |
| 2016-10-07 | Add macros from plugins in `libsyntax_ext::register_builtins`. | Jeffrey Seyfried | -8/+4 | |
| 2016-10-06 | rustc: Rename rustc_macro to proc_macro | Alex Crichton | -1/+1 | |
| This commit blanket renames the `rustc_macro` infrastructure to `proc_macro`, which reflects the general consensus of #35900. A follow up PR to Cargo will be required to purge the `rustc-macro` name as well. | ||||
| 2016-09-28 | Rollup merge of #36789 - jseyfried:non_inline_mod_in_block, r=nikomatsakis | Jonathan Turner | -6/+11 | |
| Allow more non-inline modules in blocks Currently, non-inline modules without a `#[path]` attribute are not allowed in blocks. This PR allows non-inline modules that have an ancestor module with a `#[path]` attribute, provided there is not a nearer ancestor block. For example, ```rust fn main() { #[path = "..."] mod foo { mod bar; //< allowed by this PR fn f() { mod bar; //< still an error } } } ``` Fixes #36772. r? @nikomatsakis | ||||
| 2016-09-28 | Allow non-inline modules in more places. | Jeffrey Seyfried | -6/+11 | |
| 2016-09-27 | Auto merge of #36601 - jseyfried:build_reduced_graph_in_expansion, r=nrc | bors | -3/+12 | |
| Assign def ids and build the module graph during expansion r? @nrc | ||||
| 2016-09-27 | With `--test`, make `#[test]` functions `pub` in `InvocationCollector` | Jeffrey Seyfried | -2/+9 | |
| and expand the `__test_reexports` in the correct scope. | ||||
| 2016-09-27 | Avoid aborting after expansion from `BuildReducedGraphVisitor` errors. | Jeffrey Seyfried | -1/+3 | |
| 2016-09-26 | Auto merge of #36764 - jonathandturner:rollup, r=jonathandturner | bors | -22/+86 | |
| Rollup of 14 pull requests - Successful merges: #36563, #36574, #36586, #36662, #36663, #36669, #36676, #36721, #36723, #36727, #36729, #36742, #36754, #36756 - Failed merges: | ||||
| 2016-09-26 | Move `ensure_complete_parse` into `expand.rs`. | Jeffrey Seyfried | -0/+12 | |
| 2016-09-26 | make emit_feature_err take a ParseSess | Tim Neumann | -1/+1 | |
| 2016-09-26 | Refactor `ensure_complete_parse`. | Jeffrey Seyfried | -12/+8 | |
| 2016-09-26 | Remove `TokResult`. | Jeffrey Seyfried | -18/+27 | |
| 2016-09-26 | Refactor `parse_expansion` out of `ResultAnyMacro`. | Jeffrey Seyfried | -4/+51 | |
| 2016-09-24 | Load macros from `#[macro_use]` extern crates in `resolve`. | Jeffrey Seyfried | -19/+0 | |
| 2016-09-22 | Auto merge of #36573 - jseyfried:groundwork, r=nrc | bors | -8/+9 | |
| resolve: groundwork for building the module graph during expansion r? @nrc | ||||
| 2016-09-22 | Auto merge of #36154 - nrc:proc-macro-init, r=@jseyfried | bors | -2/+79 | |
| Adds a `ProcMacro` form of syntax extension This commit adds syntax extension forms matching the types for procedural macros 2.0 (RFC #1566), these still require the usual syntax extension boiler plate, but this is a first step towards proper implementation and should be useful for macros 1.1 stuff too. Supports both attribute-like and function-like macros. Note that RFC #1566 has not been accepted yet, but I think there is consensus that we want to head in vaguely that direction and so this PR will be useful in any case. It is also fairly easy to undo and does not break any existing programs. This is related to #35957 in that I hope it can be used in the implementation of macros 1.1, however, there is no direct overlap and is more of a complement than a competing proposal. There is still a fair bit of work to do before the two can be combined. r? @jseyfried cc @alexcrichton, @cgswords, @eddyb, @aturon | ||||
| 2016-09-22 | Use `Resolver::visit_expansion` only with monotonic expansions. | Jeffrey Seyfried | -8/+9 | |
| 2016-09-23 | reviewer comments and rebasing | Nick Cameron | -29/+57 | |
| 2016-09-22 | Auto merge of #36618 - jseyfried:crate_root_attr_invoc, r=nrc | bors | -7/+14 | |
| macros: allow attribute invocations at the crate root Fixes #36617. r? @nrc | ||||
| 2016-09-22 | Adds a `ProcMacro` form of syntax extension | Nick Cameron | -2/+51 | |
| This commit adds syntax extension forms matching the types for procedural macros 2.0 (RFC #1566), these still require the usual syntax extension boiler plate, but this is a first step towards proper implementation and should be useful for macros 1.1 stuff too. Supports both attribute-like and function-like macros. | ||||
| 2016-09-21 | Allow attribute macro invocations at the crate root. | Jeffrey Seyfried | -7/+14 | |
| 2016-09-20 | rustc_metadata: go only through rustc_serialize in astencode. | Eduard Burtescu | -3/+3 | |
| 2016-09-15 | Remove `MacroRulesTT`. | Jeffrey Seyfried | -41/+1 | |
| 2016-09-15 | Allow `IdentMacroExpander::expand` to access the ident macro invocation's ↵ | Jeffrey Seyfried | -1/+1 | |
| attributes. | ||||
| 2016-09-15 | Move fields `single_step` and `keep_macs` from `MacroExpander` to ↵ | Jeffrey Seyfried | -10/+7 | |
| `ExpansionConfig`. | ||||
| 2016-09-13 | Differentiate between monotonic and non-monotonic expansion and | Jeffrey Seyfried | -9/+15 | |
| only assign node ids during monotonic expansion. | ||||
| 2016-09-13 | Remove scope placeholders from the crate root. | Jeffrey Seyfried | -2/+13 | |
