about summary refs log tree commit diff
path: root/src/libsyntax/parse
AgeCommit message (Collapse)AuthorLines
2013-03-19Make driver::driver::parse_cfgspecs parse any variety of meta_itemLuca Bruno-0/+16
All current meta items types (word, name-value, list) are now properly parsed by rustc --cfg command line. Fixes #2399 Signed-off-by: Luca Bruno <lucab@debian.org>
2013-03-18Allow constant expressions in [Type * n].Luqman Aden-17/+4
2013-03-18librustc: Make the compiler ignore purity.Patrick Walton-7/+12
For bootstrapping purposes, this commit does not remove all uses of the keyword "pure" -- doing so would cause the compiler to no longer bootstrap due to some syntax extensions ("deriving" in particular). Instead, it makes the compiler ignore "pure". Post-snapshot, we can remove "pure" from the language. There are quite a few (~100) borrow check errors that were essentially all the result of mutable fields or partial borrows of `@mut`. Per discussions with Niko I think we want to allow partial borrows of `@mut` but detect obvious footguns. We should also improve the error message when `@mut` is erroneously reborrowed.
2013-03-18libsyntax: Stop parsing old lifetimes, except for the ones on data type ↵Patrick Walton-0/+11
declarations.
2013-03-18librustc: Convert all uses of old lifetime notation to new lifetime ↵Patrick Walton-1/+1
notation. rs=delifetiming
2013-03-18Make &self permit explicit lifetimes, but don't really use themNiko Matsakis-1/+62
(this will be needed for snapshotting at some point).
2013-03-15Update test case to conform to new restrictions on castingJohn Clements-3/+2
2013-03-15Test case fixup (old one tested the old bad behavior).John Clements-12/+12
2013-03-13libsyntax: Remove a use of deprecated Encodable from libsyntax. rs=burningtreePatrick Walton-1/+1
2013-03-13test: Fix tests. rs=testsPatrick Walton-1/+1
2013-03-13librustc: Don't require the "static" keyword to define a static methodPatrick Walton-10/+10
2013-03-13librustc: Remove implicit self from the language, except for old-style drop ↵Patrick Walton-1/+15
blocks.
2013-03-13librustc: Remove overloaded operator autoderef.Patrick Walton-1/+1
2013-03-13librustc: Don't accept `as Trait` anymore; fix all occurrences of it.Patrick Walton-34/+34
2013-03-13Remove `++` mode from the compiler (it is parsed as `+` mode)Niko Matsakis-3/+12
and obsolete `-` mode altogether (it *was* parsed as `+` mode).
2013-03-13auto merge of #5293 : brson/rust/logging, r=brsonbors-4/+4
r? @graydon This removes `log` from the language. Because we can't quite implement it as a syntax extension (probably need globals at the least) it simply renames the keyword to `__log` and hides it behind macros. After this the only way to log is with `debug!`, `info!`, etc. I figure that if there is demand for `log!` we can add it back later. I am not sure that we ever agreed on this course of action, though I *think* there is consensus that `log` shouldn't be a statement.
2013-03-12Stop parsing __asm__.Luqman Aden-9/+0
2013-03-12Parse inline assembly.Luqman Aden-1/+10
2013-03-11Remove the log keyword (by renaming it to __log)Brian Anderson-2/+2
We can't quite remove logging from the language, but this hides the keyword.
2013-03-11Remove uses of logBrian Anderson-2/+2
2013-03-11libsyntax: Stop parsing newtype enumsPatrick Walton-10/+9
2013-03-11libsyntax: Remove newtype enums from libsyntax. rs=deenumPatrick Walton-4/+2
2013-03-11libsyntax: Stop parsing bare functions in preparation for switching them overPatrick Walton-1/+16
2013-03-11librustc: Replace all uses of `fn()` with `&fn()`. rs=defunPatrick Walton-10/+10
2013-03-11Implement vector destructuring from tailSeo Sanghyeon-15/+25
2013-03-09Remove @ast::Region and replace with @ast::Lifetime.Niko Matsakis-91/+80
Modify pretty-printer to emit lifetimes and fix a few minor parser bugs that this uncovered.
2013-03-08Fix dvec-related fallout in testsAlex Crichton-3/+3
2013-03-07librustc: Stop parsing `assert`.Patrick Walton-3/+9
2013-03-07librustc: Convert all uses of `assert` over to `fail_unless!`Patrick Walton-15/+15
2013-03-07librustc: Remove record patterns from the compilerPatrick Walton-5/+11
2013-03-07libsyntax: Remove struct literal expressions from the compilerPatrick Walton-29/+1
2013-03-07librustc: Remove structural record types from the compilerPatrick Walton-2/+2
2013-03-07libsyntax: Stop parsing structural record typesPatrick Walton-0/+7
2013-03-07add deriving_eq for tokensJohn Clements-273/+2
2013-03-06auto merge of #5255 : jbclements/rust/remove-parse-value-ident, r=graydonbors-40/+16
After the removal of the "restricted keyword" feature in 0c82c00dc4f49aeb9b57c92c9a40ae35d8a1ee29 , there's no longer any difference between parse_ident() and parse_value_ident(), and therefore no difference between parse parse_path_without_tps() and parse_value_path(). I've collapsed all of these, removing the redundant functions and eliminating the need for two higher-order arguments.
2013-03-06Permit either foo/&self or foo<'self>Niko Matsakis-9/+33
2013-03-06finish removing parse_value_identJohn Clements-15/+7
2013-03-06removed unused abstraction over paths and value_pathsJohn Clements-25/+9
2013-03-05libsyntax: Separate multiple inherited traits with `+`Patrick Walton-1/+1
2013-03-04Adding missing imports for tests, and gate off othersAlex Crichton-1/+0
2013-03-04Remove unused imports throughout src/Alex Crichton-20/+0
2013-03-03libsyntax: add &self to parser methodsErick Tryzelaar-261/+303
2013-03-02librustc: Stop parsing `fn@`, `fn~`, and `fn&`Patrick Walton-34/+3
2013-03-02libsyntax: Remove `fn@`, `fn~`, and `fn&` from libsyntax. rs=defunPatrick Walton-2/+2
2013-03-02librustc: Forbid chained imports and fix the logic for one-level renaming ↵Patrick Walton-1/+1
imports
2013-03-02Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-10/+6
2013-03-01Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-6/+6
2013-03-02Remove REC, change related tests/docsJihyun Yu-10/+6
2013-03-01Avoid calling to_vec() unnecessarily in parser.Niko Matsakis-6/+6
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-01Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-3/+11