about summary refs log tree commit diff
path: root/src/libsyntax
AgeCommit message (Collapse)AuthorLines
2013-02-03rename map -> oldmap and mark it as deprecatedDaniel Micay-23/+23
LinearMap is quite a bit faster, and is fully owned/sendable without requiring copies. The older std::map also doesn't use explicit self and relies on mutable fields.
2013-02-01Fix breakageBrian Anderson-2/+2
2013-02-01Merge remote-tracking branch 'nickdesaulniers/issue4524' into nocomm1Brian Anderson-47/+45
2013-02-01Remove fail keyword from lexer & parser and clean up remaining calls toNick Desaulniers-47/+45
fail Fix merge conflicts - Issue 4524
2013-01-31cleanup for make checkJohn Clements-3/+3
2013-01-31more cleanupJohn Clements-59/+69
2013-01-31test cases, cleanupJohn Clements-178/+318
2013-01-31Replace most invocations of fail keyword with die! macroNick Desaulniers-44/+44
2013-01-31Workaround for #4717: pad contents of ast. rs=breakageNiko Matsakis-6/+11
2013-01-31Finalize moves-based-on-type implementation.Niko Matsakis-231/+103
Changes: - Refactor move mode computation - Removes move mode arguments, unary move, capture clauses (though they still parse for backwards compatibility) - Simplify how moves are handled in trans - Fix a number of illegal copies that cropped up - Workaround for bug involving def-ids in params (see details below) Future work (I'll open bugs for these...): - Improve error messages for moves that are due to bindings - Add support for moving owned content like a.b.c to borrow check, test in trans (but I think it'll "just work") - Proper fix for def-ids in params Def ids in params: Move captures into a map instead of recomputing. This is a workaround for a larger bug having to do with the def-ids associated with ty_params, which are not always properly preserved when inlining. I am not sure of my preferred fix for the larger bug yet. This current fix removes the only code in trans that I know of which relies on ty_param def-ids, but feels fragile.
2013-01-30Fix RIMOV damage to libsyntaxBen Striegel-7/+7
2013-01-30RIMOV, round 10Ben Striegel-1/+1
find ./ -type f -name "*.rs" -exec sed -i "s/~\[mut /~\[/g" {} \;
2013-01-30RIMOV, round 8Ben Striegel-2/+2
find ./ -type f -name "*.rs" -exec sed -i "s/ \([a-zA-Z_]\+\): ~\[mut / mut \1: ~\[/g" {} \;
2013-01-30RIMOV, round 7Ben Striegel-1/+1
find ./ -type f -name "*.rs" -exec sed -i "s/ mut \([a-zA-Z_]\+\): ~\[mut / mut \1: ~\[/g" {} \;
2013-01-30RIMOV, round 6.Ben Striegel-2/+2
This gets rid of `mut` inside bare vectors. It's going to cause some problems later.
2013-01-30RIMOV, round 3Ben Striegel-4/+4
find ./ -type f -name "*.rs" -exec sed -i "s/let \(.*\)\[mut[ ]\?/let mut \1\[/g" {} \;
2013-01-30librustc: Change `self` as a type to `Self` everywhere. r=brsonPatrick Walton-1/+1
2013-01-30librustc: Remove legacy exports from the language. r=brsonPatrick Walton-151/+31
2013-01-29De-capitalize "note" to get rid of spurious tidy warningsTim Chevalier-1/+1
2013-01-29libsyntax: De-export libsyntax. rs=deexportingPatrick Walton-610/+579
2013-01-29libsyntax: De-export a lot of libsyntax. rs=deëxportingPatrick Walton-569/+502
2013-01-29libsyntax: Implement the `impl Trait for Type` syntaxPatrick Walton-6/+23
2013-01-29librustc: De-implicit-self the visitor. r=graydonPatrick Walton-0/+1
2013-01-29librustc: Disallow trait bounds in types, enumerations, and structure ↵Patrick Walton-15/+20
definitions. r=tjc
2013-01-29libstd: Remove "dual impls" from the language and enforce coherence rules. ↵Patrick Walton-12/+14
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-28syntax: Don't add an extra space before the last comma...Tim Chevalier-1/+0
...when printing struct update expressions.
2013-01-28Add #[legacy_records] crate attributeTim Chevalier-1/+3
In rustc, rustdoc, rusti, syntax, and std.
2013-01-28Add to_str() definitions for some AST typesNiko Matsakis-0/+18
r=brson
2013-01-28Link the lifetimes of regions resulting from borrows of theNiko Matsakis-3/+10
contents of other borrowed pointers to the lifetimes of the borrowed value. Fixes #3148. r=catamorphism
2013-01-24remove remaining is_not_empty functions/methodsDaniel Micay-3/+3
2013-01-24replace ConstVector trait with the Container traitDaniel Micay-8/+8
2013-01-24Merge pull request #4613 from erickt/incomingTim Chevalier-197/+104
convert most of libcore and libstd to structs, work around tzset race
2013-01-24syntax/rustc: Less copyTim Chevalier-3/+3
2013-01-24Convert pipes::Buffer into a structErick Tryzelaar-4/+4
2013-01-24Convert extfmt::rt::Conv into a structErick Tryzelaar-11/+25
2013-01-24remove support for records from auto_encodeErick Tryzelaar-182/+75
2013-01-24unit test cases now pass, added a few to the internerJohn Clements-27/+50
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-23fix trailing whitepaceJohn Clements-2/+2
2013-01-23cleaning up, adding testsJohn Clements-6/+48
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/+25
transitionary basis to avoid conflicting with the keyword right now). r=brson
2013-01-23libsyntax: Remove `fn() unsafe { ... }`. r=graydonPatrick Walton-17/+28
2013-01-23Long linesTim Chevalier-1/+2
2013-01-23renaming to adhere to conventionsJohn Clements-110/+102
2013-01-23libsyntax: Implement the `+` syntax for multiple trait bounds. r=tjcPatrick Walton-0/+11
2013-01-23Merge pull request #4596 from Trinick/tomutrenameTim Chevalier-5/+5
core: Rename to_mut and from_mut to cast_to_mut and cast_from_mut
2013-01-23core: Rename to_mut and from_mut to cast_to_mut and cast_from_mutTrinick-5/+5