summary refs log tree commit diff
path: root/src/libsyntax/print
AgeCommit message (Collapse)AuthorLines
2014-01-03libsyntax: Fix tests.Patrick Walton-6/+0
2014-01-03librustc: Remove `@mut` support from the parserPatrick Walton-5/+1
2014-01-03libsyntax: De-`@mut` `ps::boxes`Patrick Walton-10/+23
2014-01-03libsyntax: De-`@mut` (and de-`@`) `Printer::print_stack`Patrick Walton-4/+4
2014-01-03libsyntax: Correctly de-`@mut` the pretty printer writerPatrick Walton-18/+14
2014-01-03libsyntax: De-`@mut` `CurrentCommentAndLiteral`Patrick Walton-3/+3
2014-01-03librustc: De-`@mut` all writersPatrick Walton-14/+35
2014-01-03librustc: De-`@mut` (and de-`@`) the pretty printerPatrick Walton-394/+418
2014-01-03librustc: De-`@mut` the span handlerPatrick Walton-1/+1
2014-01-02auto merge of #10696 : fhahn/rust/issue9543-remove-extern-mod-foo, r=pcwaltonbors-6/+1
This patch for #9543 throws an `obsolete syntax` error for `extern mod foo (name="bar")` . I was wondering if [this](https://github.com/fhahn/rust/compare/mozilla:master...fhahn:issue9543-remove-extern-mod-foo?expand=1#diff-da9d34ca1d0f6beee2838cf02e07345cR4444) is the correct place to do this? I think the wording of the error message could probably be improved as well. If this approach is OK, I'm going to run the whole test suite tomorrow and update the old syntax to the new one.
2014-01-01Remove `extern mod foo (name="bar")` syntax, closes #9543Florian Hahn-6/+1
2014-01-01syntax::codemap: Add static DUMMY_SPklutzy-2/+2
It replaces `dummy_sp()`.
2014-01-01syntax::diagnostic: Remove unnecessary traitsklutzy-1/+1
This removes trait `handler` and `span_handler`, and renames `HandlerT` to `Handler`, `CodemapT` to `SpanHandler`.
2013-12-17Remove obsolete mutability from ast::TySeo Sanghyeon-13/+5
2013-12-15librustc: Remove identifiers named `box`, since it's about to become a keyword.Patrick Walton-9/+12
2013-12-11Make 'self lifetime illegal.Erik Price-5/+5
Also remove all instances of 'self within the codebase. This fixes #10889.
2013-12-10Support imports of the form `use {foo,bar}`Kevin Ballard-2/+6
This fixes #10806.
2013-12-10Extend allocation lint for boxing expressionsSeo Sanghyeon-1/+1
2013-12-04std::str: remove from_utf8.Huon Wilson-3/+3
This function had type &[u8] -> ~str, i.e. it allocates a string internally, even though the non-allocating version that take &[u8] -> &str and ~[u8] -> ~str are all that is necessary in most circumstances.
2013-12-01Box Block, fn_decl, variant and Ty in the AST, as they were inflating ↵Eduard Burtescu-45/+49
critical enum sizes.
2013-11-28Register new snapshotsAlex Crichton-7/+7
2013-11-26libsyntax: Remove all non-`proc` `do` syntax.Patrick Walton-16/+8
2013-11-25syntax: parse inner attributes on impls.Huon Wilson-0/+1
Fixes #3614.
2013-11-21Remove ty_macSeo Sanghyeon-3/+0
2013-11-20auto merge of #10567 : sanxiyn/rust/bytepos, r=alexcrichtonbors-1/+1
2013-11-20Make BytePos 32-bitSeo Sanghyeon-1/+1
2013-11-19libsyntax: Change all uses of `&fn` to `||`.Patrick Walton-4/+8
2013-11-18Use '..' as slice wildcard in vectorsBrian Anderson-1/+7
2013-11-11Move std::rt::io to std::ioAlex Crichton-4/+4
2013-11-08Fix pretty printer when there are multiple lifetime parametersNiko Matsakis-6/+13
2013-11-08Update FIXMEs with issue numbersNiko Matsakis-1/+1
2013-11-08Generalize AST and ty::Generics to accept multiple lifetimes.Niko Matsakis-3/+4
2013-11-04libsyntax/librustc: Allow calling variadic foreign functions.Luqman Aden-1/+8
2013-10-31librustc: Implement `|A| -> B` syntax for closures and make bare `fn`Patrick Walton-4/+41
work
2013-10-29librustc: Implement the `proc` type as sugar for `~once fn` and `proc`Patrick Walton-6/+55
notation for closures, and disable the feature gate for `once fn` if used with the `~` sigil.
2013-10-28Field identifiers now include specific spans (Closes #8263).Joshua Yanovski-1/+1
2013-10-25libsyntax/librustc: Allow mut qualifier in patterns.Luqman Aden-8/+4
2013-10-24Remove even more of std::ioAlex Crichton-34/+37
Big fish fried here: extra::json most of the compiler extra::io_util removed extra::fileinput removed Fish left to fry extra::ebml
2013-10-22libsyntax/librustc: Allow specifying mut on ~self.Luqman Aden-1/+4
2013-10-22libsyntax/librustc: Allow specifying mut on by-value self.Luqman Aden-1/+4
2013-10-22Drop the '2' suffix from logging macrosAlex Crichton-33/+33
Who doesn't like a massive renaming?
2013-10-18Optimize include_bin! for large inputsAlex Crichton-0/+8
Previously an ExprLit was created *per byte* causing a huge increase in memory bloat. This adds a new `lit_binary` to contain a literal of binary data, which is currently only used by the include_bin! syntax extension. This massively speeds up compilation times of the shootout-k-nucleotide-pipes test before: time: 469s memory: 6GB assertion failure in LLVM (section too large) after: time: 2.50s memory: 124MB Closes #2598
2013-10-10Remove named extern blocks from the ASTAlex Crichton-8/+0
There's currently a fair amount of code which is being ignored on unnamed blocks (which are the default now), and I opted to leave it commented out for now. I intend on very soon revisiting on how we perform linking with extern crates in an effort to support static linking.
2013-10-09option: rewrite the API to use compositionDaniel Micay-1/+1
2013-10-08add new enum ast::StrStyle as field to ast::lit_strBenjamin Herr-11/+14
For the benefit of the pretty printer we want to keep track of how string literals in the ast were originally represented in the source code. This commit changes parser functions so they don't extract strings from the token stream without at least also returning what style of string literal it was. This is stored in the resulting ast node for string literals, obviously, for the package id in `extern mod = r"package id"` view items, for the inline asm in `asm!()` invocations. For `asm!()`'s other arguments or for `extern "Rust" fn()` items, I just the style of string, because it seemed disproportionally cumbersome to thread that information through the string processing that happens with those string literals, given the limited advantage raw string literals would provide in these positions. The other syntax extensions don't seem to store passed string literals in the ast, so they also discard the style of strings they parse.
2013-10-08pp: print spaces around '=' in 'extern mod blah = "blah"'Benjamin Herr-0/+2
2013-10-01Migrate users of 'loop' to 'continue'Alex Crichton-1/+1
Closes #9467
2013-09-30syntax: Remove usage of fmt!Alex Crichton-36/+36
2013-09-24auto merge of #9336 : alexcrichton/rust/issue-7981, r=catamorphismbors-11/+5
Progress on #7981 This doesn't completely close the issue because `struct A;` is still allowed, and it's a much larger change to disallow that. I'm also not entirely sure that we want to disallow that. Regardless, punting that discussion to the issue instead.
2013-09-24Stop accepting 'impl ...;', require {} insteadAlex Crichton-11/+5
Progress on #7981