about summary refs log tree commit diff
path: root/src/libsyntax
AgeCommit message (Collapse)AuthorLines
2013-02-11Fix license blockBrian Anderson-2/+2
2013-02-11Update copyright yearsMikko Perttunen-1/+1
2013-02-11Use topmost span for macro expansion location. Fixes behaviour of file!, ↵Mikko Perttunen-7/+28
line! and col!
2013-02-09auto merge of #4861 : sethpink/rust/incoming, r=catamorphismbors-52/+24
Fix for issue #4830.
2013-02-09auto merge of #4854 : thestinger/rust/oldmap, r=catamorphismbors-14/+12
2013-02-09tidyJohn Clements-5/+7
2013-02-09fix typos in sample code, add enum to json encoder, add test caseJohn Clements-11/+50
2013-02-09Issue #4830 fixSeth Pink-52/+24
2013-02-08libsyntax/attr.rs: switch from oldmap to LinearSetDaniel Micay-5/+3
2013-02-08oldmap: get rid of legacy _ref suffixesDaniel Micay-10/+10
2013-02-09Added related FIXME for 3260Matthijs Hofstra-1/+1
2013-02-09Fix for issue 2174Matthijs Hofstra-4/+16
The function that formats and prints the squigly line that hilights errors counted tabs as spaces, which resulted in incorrect error messages when tabs were used for indentation. This change compares the highlight line with the previous line and inserts a tab instead of a space whenever such a tab exists on the previous line. Note that error messages will still highlight incorrectly when the previous line include characters that require more than one utf8 code point, as mentioned in issue 3260.
2013-02-08Add and lex LIFETIME tokensNiko Matsakis-22/+90
cc #4846
2013-02-07librustc: Lots of de-muting. rs=demutingPatrick Walton-567/+596
2013-02-07auto merge of #4791 : jbclements/rust/demodeing-and-deGCing, r=jbclements,brsonbors-67/+70
r? It looks to me like the string_reader and tt_reader structs are GC pointers only because they predate the modern borrow system. This commit leaves the type names string_reader and tt_reader alone (they still refer to GC-ed pointers), but internally the functions now use borrowed pointers to refer to these structures. My guess would be that it's possible to move this change outward and not use the GCed pointers at all, but that change looks like it could be a larger one. Actually, I'm delighted at how quick this change was.
2013-02-07Make ~fn non-copyable, make &fn copyable, split barefn/closure types,Niko Matsakis-170/+243
correct handling of moves for struct-record update. Part of #3678. Fixes #2828, #3904, #4719.
2013-02-06libsyntax: no binary/hex float literalsKang Seonghoon-0/+7
2013-02-05oldmap: use &K instead of K in find and getPatrick Walton-10/+10
This reverts commit a4250a96fdf61142a9c8dbb6d37ae8435c99e396. This is not the cause of the nonexhaustive-match failure.
2013-02-05Revert "oldmap: use &K instead of K in find and get"Graydon Hoare-10/+10
This reverts commit 8e643525d4e5bca993dada43615916c382a0645b.
2013-02-05Merge branch 'incoming' into removingTim Chevalier-10/+10
2013-02-04lines too longJohn Clements-11/+12
2013-02-04demodeing, un-gc-ingJohn Clements-70/+72
It looks to me like the string_reader and tt_reader structs are GC pointers only because they predate the modern borrow system. This commit leaves the type names string_reader and tt_reader alone (they still refer to GC-ed pointers), but internally the functions now use borrowed pointers to refer to these structures. My guess would be that it's possible to move this change outward and not use the GCed pointers at all, but that change looks like it could be a larger one. Actually, I'm delighted at how quick this change was.
2013-02-04core/syntax: Staging fixesTim Chevalier-28/+0
2013-02-04auto merge of pull req #4777 from thestinger/rust, r=graydonbors-10/+10
2013-02-04syntax: Make the pipe compiler stop generating set_buffer_ callsTim Chevalier-2/+2
2013-02-04core/syntax: Add transitional code for pipesTim Chevalier-0/+28
2013-02-04Merge remote-tracking branch 'bstrie/rimov' into incomingBrian Anderson-13/+13
Conflicts: src/libsyntax/parse/parser.rs src/test/bench/graph500-bfs.rs src/test/bench/sudoku.rs src/test/run-pass/borrowck-mut-vec-as-imm-slice.rs src/test/run-pass/empty-mutable-vec.rs src/test/run-pass/foreach-nested.rs src/test/run-pass/swap-2.rs
2013-02-04Merge pull request #4684 from erickt/incomingBrian Anderson-12/+12
core: convert ToStr::to_str to take explicit &self
2013-02-04libsyntax: Add explicit self to ast_util. rs=explicit-selfingPatrick Walton-22/+22
2013-02-03core: convert ToStr::to_str to take explicit &selfErick Tryzelaar-12/+12
2013-02-03oldmap: use &K instead of K in find and getDaniel Micay-10/+10
2013-02-03Merge remote-tracking branch 'thestinger/old_map' into incomingBrian Anderson-29/+29
Conflicts: src/test/bench/core-map.rs
2013-02-03Converted libcore/uint-template.rs to the new string functions.Marvin Löbel-7/+7
- Moved ToStr implementation of unsigned integers to uint-template.rs. - Marked the `str()` function as deprecated. - Forwarded all conversion functions to `core::num::to_str_common()` and `core::num::from_str_common()`. - Fixed most places in the codebase where `to_str()` is being used. - Added uint-template to_str and from_str overflow tests.
2013-02-03oldmap: get rid of the legacy each_key methodDaniel Micay-3/+3
2013-02-03oldmap: get rid of the legacy contains_key methodDaniel Micay-3/+3
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.