about summary refs log tree commit diff
path: root/src/libsyntax/parse
AgeCommit message (Collapse)AuthorLines
2013-01-29librustc: Disallow trait bounds in types, enumerations, and structure ↵Patrick Walton-10/+8
definitions. r=tjc
2013-01-29libstd: Remove "dual impls" from the language and enforce coherence rules. ↵Patrick Walton-2/+2
r=brson "Dual impls" are impls that are both type implementations and trait implementations. They can lead to ambiguity and so this patch removes them from the language. This also enforces coherence rules. Without this patch, records can implement traits not defined in the current crate. This patch fixes this, and updates all of rustc to adhere to the new enforcement. Most of this patch is fixing rustc to obey the coherence rules, which involves converting a bunch of records to structs.
2013-01-24remove remaining is_not_empty functions/methodsDaniel Micay-1/+1
2013-01-24Merge pull request #4609 from sonwow/keyword-superTim Chevalier-1/+1
Make `super` a keyword
2013-01-24syntax/rustc: Improve error message for misuse of `for` loopTim Chevalier-37/+39
Print out a clearer error message when a `for` gets used with the wrong type of iterator. Also fix spans on `for` loop bodies, and suppress some more derived errors. r=brson Closes #3651
2013-01-24Make `super` a keywordYoungsoo Son-1/+1
2013-01-23libsyntax: Fix parsing of `pub unsafe fn` inside `extern` blocks. rs=bugfixPatrick Walton-1/+2
2013-01-23libsyntax: Implement `assert` as a macro (called `fail_unless!` on a ↵Patrick Walton-12/+17
transitionary basis to avoid conflicting with the keyword right now). r=brson
2013-01-23libsyntax: Remove `fn() unsafe { ... }`. r=graydonPatrick Walton-9/+18
2013-01-23libsyntax: Implement the `+` syntax for multiple trait bounds. r=tjcPatrick Walton-0/+4
2013-01-22syntax: Allow closure args to be mutableTim Chevalier-1/+2
2013-01-22Parse `mut` in argumentsSeo Sanghyeon-1/+2
2013-01-22Add is_mutbl field to argSeo Sanghyeon-1/+4
2013-01-20convert the remaining ast record types into structsErick Tryzelaar-56/+99
These are: region,arg,fn_decl,method,_mod,foreign_mod, variant_arg,enum_def_,variant_,trait_ref.
2013-01-20convert ast::{ty_field_,ty_method} into a structErick Tryzelaar-6/+12
2013-01-20convert ast::ty into a structErick Tryzelaar-27/+55
2013-01-20convert ast::expr into a structErick Tryzelaar-24/+38
2013-01-17librustc: Implement write guards for borrowing `@mut` to `&` or `&mut`. ↵Patrick Walton-1/+1
r=nmatsakis
2013-01-14convert ast::{field_,capture_item_,mt} and middle::ty::mt into structsErick Tryzelaar-6/+16
2013-01-14Convert ast::{pat,field_pat,local_,arm} into structsErick Tryzelaar-10/+18
2013-01-14convert ast::blk_ into a structErick Tryzelaar-13/+28
2013-01-14convert ast::crate_ into a struct.Erick Tryzelaar-4/+4
2013-01-14convert ast::pat_list_ident_ to a structErick Tryzelaar-1/+2
2013-01-14convert ast::attribute_ and ast::view_item to a structErick Tryzelaar-10/+14
2013-01-14convert ast::struct_field_ into a structErick Tryzelaar-4/+6
2013-01-14convert ast::struct_def to a structErick Tryzelaar-2/+2
2013-01-14convert ast::item into a structErick Tryzelaar-6/+6
2013-01-14convert ast::struct_dtor_ into a structErick Tryzelaar-10/+10
2013-01-14convert ast::foreign_item to a structErick Tryzelaar-12/+12
2013-01-14change ast::ty_param into a struct.Erick Tryzelaar-1/+1
2013-01-14Change ast::path into a struct.Erick Tryzelaar-23/+46
2013-01-10librustc: Implement `&static` as the replacement for `Durable`. r=nmatsakisPatrick Walton-6/+16
2013-01-10librustc: Allow the type parameter version of `Self` to be spelled with a ↵Patrick Walton-9/+38
capital S
2013-01-09syntax: convert ast::spanned into a structErick Tryzelaar-36/+39
2013-01-08librustc: Make unqualified identifier searches terminate at the nearest ↵Patrick Walton-80/+88
module scope. r=tjc
2013-01-08Revert "librustc: Make unqualified identifier searches terminate at the ↵Patrick Walton-88/+80
nearest module scope. r=tjc" This reverts commit a8d37af2473da79be704c9ce2374f278c47177b6.
2013-01-08librustc: Make unqualified identifier searches terminate at the nearest ↵Patrick Walton-80/+88
module scope. r=tjc
2013-01-08Rename identifiers that still use 'alt' to use 'match'Lindsey Kuper-2/+2
This'll be less confusing for anyone who works on match in future.
2013-01-04Rename option::get_default => get_or_default, get_zero => get_or_zeroTim Chevalier-1/+1
2012-12-27librustc: Terminate name searches at the nearest module scope for paths that ↵Patrick Walton-90/+144
contain at least two components. r=graydon
2012-12-19Remove transitional path2 attributeBrian Anderson-14/+8
2012-12-18Make #[path] work with absolute paths again. Fix check-fastBrian Anderson-1/+8
2012-12-17Switch from serialization to std::serialize. (snapshot)Erick Tryzelaar-7/+7
2012-12-17Make the path and path2 attributes equivalent. Remove some usesBrian Anderson-2/+3
2012-12-17Add support for destructuring vectors in match expressionsJakub Wieczorek-0/+40
2012-12-13librustc: Make `use` statements crate-relative by default. r=brsonPatrick Walton-22/+22
2012-12-13syntax: normalize paths when parsing, close #4173.Graydon Hoare-0/+1
2012-12-12syntax: remove most code handling old-style syntax extensions.Graydon Hoare-156/+4
2012-12-12syntax: remove all remaining uses of #ast, and #ast / qquote itself.Graydon Hoare-7/+0
2012-12-11Relate the module hierarchy to directory paths in the parserBrian Anderson-4/+29
Introduces a temporary 'path2' attribute that will replace 'path' after a snapshot