about summary refs log tree commit diff
path: root/src/libsyntax/parse/parser.rs
AgeCommit message (Collapse)AuthorLines
2015-09-08Fix span bug with >> and type bindingsNick Cameron-1/+1
2015-09-06functional structure update syntax -> structure update syntaxchristopherdumas-2/+1
2015-09-04Auto merge of #28170 - nagisa:loopctl-label-spans, r=alexcrichtonbors-6/+9
r? @alexcrichton
2015-09-03Use consistent terminology for byte string literalsVadim Petrochenkov-6/+6
Avoid confusion with binary integer literals and binary operator expressions in libsyntax
2015-09-03Use proper span for break and continue labelsSimonas Kazlauskas-6/+9
Fixes #28109
2015-09-02Fix overly long spans for break and continueMarcus Klaas-2/+2
The spans of break and continue would include the next token.
2015-08-30Assign correct span to continue expressionMarcus Klaas-1/+0
Fixes https://github.com/rust-lang/rust/issues/28105.
2015-08-11syntax: fix use of "vector" for [x; n] literal and [x, y] patternsGeorg Brandl-2/+2
2015-08-10Auto merge of #27451 - seanmonstar:use-groups-as, r=alexcrichtonbors-6/+14
An implementation of [RFC 1219](https://github.com/rust-lang/rfcs/pull/1219). The RFC is not merged yet, but once merged, this could be.
2015-08-08rustc: rename multiple imports in a listSean McArthur-6/+14
2015-08-04Make parser recognize macro invocations in typesJared Roesch-2/+15
Reapplied the changes from https://github.com/freebroccolo/rust/commit/8b07abaa6e8ab42d37656dfad89de0eb5810c3b3 to a clean branch of master
2015-07-31Fix `impl A .. {}`Seo Sanghyeon-1/+1
2015-07-29Replace illegal with invalid in most diagnosticsSimonas Kazlauskas-2/+2
2015-07-28Auto merge of #27234 - oli-obk:move_get_name_get_ident_to_impl, r=eddybbors-20/+18
this has quite some fallout. but also made lots of stuff more readable imo [breaking-change] for plugin authors
2015-07-28remove `get_ident` and `get_name`, make `as_str` soundOliver Schneider-20/+18
2015-07-27Turn on `box(PLACE) expr` deprecation warning post-snapshot.Eduard Burtescu-11/+7
2015-07-26Remove `ast::LocalSource` with only one used variantmitaa-2/+1
`LocalSource` indicated wether a let binding originated from for-loop desugaring to enable specialized error messages, but for-loop expansion has changed and this is now achieved through `MatchSource::ForLoopDesugar`.
2015-07-24Auto merge of #27215 - pnkfelix:fsk-placer-take-5-just-in, r=nikomatsakisbors-7/+38
Macro desugaring of `in PLACE { BLOCK }` into "simpler" expressions following the in-development "Placer" protocol. Includes Placer API that one can override to integrate support for `in` into one's own type. (See [RFC 809].) [RFC 809]: https://github.com/rust-lang/rfcs/blob/master/text/0809-box-and-in-for-stdlib.md Part of #22181 Replaced PR #26180. Turns on the `in PLACE { BLOCK }` syntax, while leaving in support for the old `box (PLACE) EXPR` syntax (since we need to support that at least until we have a snapshot with support for `in PLACE { BLOCK }`. (Note that we are not 100% committed to the `in PLACE { BLOCK }` syntax. In particular I still want to play around with some other alternatives. Still, I want to get the fundamental framework for the protocol landed so we can play with implementing it for non `Box` types.) ---- Also, this PR leaves out support for desugaring-based `box EXPR`. We will hopefully land that in the future, but for the short term there are type-inference issues injected by that change that we want to resolve separately.
2015-07-23Auto merge of #27203 - marcusklaas:fix-range-span, r=alexcrichtonbors-4/+5
Right trims the span for certain range expressions. Closes https://github.com/rust-lang/rust/issues/27162.
2015-07-22placate `make tidy`.Felix S. Klock II-3/+9
2015-07-22Added support for parsing `in PLACE { BLOCK_CONTENT }`.Felix S. Klock II-8/+33
2015-07-21Assign proper span to range expressionMarcus Klaas-4/+5
2015-07-21Use a span from the correct file for the inner span of a moduleNick Cameron-10/+14
This basically only affects modules which are empty (or only contain comments). Closes #26755
2015-07-18Include label in the span of loopsMarcus Klaas-19/+23
2015-07-13Auto merge of #26750 - nrc:refactor-submod, r=sfacklerbors-68/+108
This makes the functionality usable from outside the parser
2015-07-10Change some instances of .connect() to .join()Wesley Wiser-1/+1
2015-07-09Fix a span bug for qualified pathsNick Cameron-4/+2
2015-07-03Refactor how the parser looks for sub-modulesNick Cameron-68/+108
This makes the functionality usable from outside the parser
2015-06-11Auto merge of #26190 - Veedrac:no-iter, r=alexcrichtonbors-5/+5
Pull request for #26188.
2015-06-10Removed many pointless calls to *iter() and iter_mut()Joshua Landau-5/+5
2015-06-09Exise 'unsafe pointer' in favor of 'raw pointer'Steve Klabnik-1/+1
Using two terms for one thing is confusing, these are called 'raw pointers' today.
2015-06-08Auto merge of #26091 - chellmuth:pub-struct-field-span, r=nrcbors-1/+4
Issue: #26083 Re-submitting https://github.com/rust-lang/rust/pull/26084 r? @nrc
2015-06-07StructField span should include `pub`Chris Hellmuth-1/+4
2015-06-04Fix span for ExprPath variantsMarcus Klaas-2/+1
2015-05-26Fix typo.Nick Hamann-1/+1
2015-05-21Make various fixes:Niko Matsakis-27/+41
- add feature gate - add basic tests - adjust parser to eliminate conflict between `const fn` and associated constants - allow `const fn` in traits/trait-impls, but forbid later in type check - correct some merge conflicts
2015-05-21syntax: parse `const fn` for free functions and inherent methods.Eduard Burtescu-12/+39
2015-05-17Auto merge of #25387 - eddyb:syn-file-loader, r=nikomatsakisbors-5/+3
This allows compiling entire crates from memory or preprocessing source files before they are tokenized. Minor API refactoring included, which is a [breaking-change] for libsyntax users: * `ParseSess::{next_node_id, reserve_node_ids}` moved to rustc's `Session` * `new_parse_sess` -> `ParseSess::new` * `new_parse_sess_special_handler` -> `ParseSess::with_span_handler` * `mk_span_handler` -> `SpanHandler::new` * `default_handler` -> `Handler::new` * `mk_handler` -> `Handler::with_emitter` * `string_to_filemap(sess source, path)` -> `sess.codemap().new_filemap(path, source)`
2015-05-16Auto merge of #25487 - P1start:extern-crate-unexpected-error, r=huonwbors-5/+1
Closes #25468.
2015-05-16Clarify the error message for malformed `extern crate` statementsP1start-5/+1
Closes #25468.
2015-05-16Fix the spans of `move` closuresP1start-4/+5
Closes #24986.
2015-05-15syntax: Add unquoting ast::{Generics,WhereClause}Erick Tryzelaar-0/+4
2015-05-14syntax: abstract over the file loading mechanism.Eduard Burtescu-3/+2
2015-05-14syntax: replace sess.span_diagnostic.cm with sess.codemap().Eduard Burtescu-2/+1
2015-05-12Auto merge of #25171 - quantheory:associated_time_long_paths, r=nikomatsakisbors-35/+15
It is currently broken to use syntax such as `<T as Foo>::U::static_method()` where `<T as Foo>::U` is an associated type. I was able to fix this and simplify the parser a bit at the same time. This also fixes the corresponding issue with associated types (#22139), but that's somewhat irrelevant because #22519 is still open, so this syntax still causes an error in type checking. Similarly, although this fix applies to associated consts, #25046 forbids associated constants from using type parameters or `Self`, while #19559 means that associated types have to always have one of those two. Therefore, I think that you can't use an associated const from an associated type anyway.
2015-05-07Fix use of UFCS syntax to call methods on associated types.Sean Patrick Santos-35/+15
2015-05-05Use `empty()` instead of a special constTamir Duberstein-3/+2
2015-05-01Rollup merge of #24981 - carols10cents:remove-more-priv, r=alexcrichtonManish Goregaokar-1/+1
Hi! While researching stuff for the reference and the grammar, I came across a few mentions of using the `priv` keyword that was removed in 0.11.0 (#13547, #8122, rust-lang/rfcs#26, [RFC 0026](https://github.com/rust-lang/rfcs/blob/master/text/0026-remove-priv.md)). One occurrence is a mention in the reference, a few are in comments, and a few are marking test functions. I left the test that makes sure you can't name an ident `priv` since it's still a reserved keyword. I did a little grepping around for `priv `, priv in backticks, `Private` etc and I think the remaining instances are fine, but if anyone knows anywhere in particular I should check for any other lingering mentions of `priv`, please let me know and I would be happy to! :fallen_leaf: :ocean:
2015-04-29Remove mention of 'priv'; visibility is either PUB or nothingCarol Nichols-1/+1
2015-04-29FalloutTamir Duberstein-17/+20