summary refs log tree commit diff
path: root/src/libsyntax
AgeCommit message (Collapse)AuthorLines
2013-04-30new borrow checker (mass squash)Niko Matsakis-111/+141
2013-04-30adapt to snapshotNiko Matsakis-20/+0
2013-04-29libstd: Fix merge fallout.Patrick Walton-16/+14
2013-04-29librustc: Forbid type implementations on typedefs.Patrick Walton-2/+49
2013-04-29librustc: Change labels to use the lifetime notation `'`.Patrick Walton-29/+68
2013-04-29test: Fix tests.Patrick Walton-1/+3
2013-04-29librustc: Remove the concept of modes from the compiler.Patrick Walton-99/+52
This commit does not remove `ty::arg`, although that should be possible to do now.
2013-04-29librustc: Remove `ptr::addr_of`.Patrick Walton-5/+3
2013-04-29auto merge of #6083 : jbclements/rust/parser-cleanup, r=jbclementsbors-542/+870
r? @pcwalton A month's worth of parser cleanup here. Much of this is new comments and renaming. A number of these commits also remove unneeded code. Probably the biggest refactor here is splitting "parse_item_or_view_item" into two functions; it turns out that the only overlap between items in foreign modules and items in regular modules was macros, so this refactor should make things substantially easier for future maintenance.
2013-04-28make way for a new iter moduleDaniel Micay-21/+22
2013-04-28parser commentsJohn Clements-12/+82
2013-04-28s/one_tuple/trailing_comma (more accurate name)John Clements-3/+3
2013-04-28removed unneeded argument to parse_recordJohn Clements-4/+5
2013-04-28s/parse_purity/parse_unsafetyJohn Clements-3/+4
2013-04-28remove 3-line used-once functionJohn Clements-8/+4
2013-04-28rename parse_instance_var to parse_name_and_tyJohn Clements-3/+3
the name no longer made sense. perhaps this could just be inlined.
2013-04-28remove obsolete semicolon from list of suggestionsJohn Clements-1/+1
2013-04-28rename parse_single_class_item as wellJohn Clements-5/+6
2013-04-28rename parse_class_item to parse_struct_decl_fieldJohn Clements-3/+4
two problems with the old name: they're not called classes any more, and the word "item" has a specific connotation in the parser
2013-04-28needs_comma was always trueJohn Clements-3/+2
2013-04-28fix for parsing x() as identifier patternJohn Clements-17/+14
2013-04-28hard to read the implied double negativeJohn Clements-4/+4
2013-04-28remove unused functions, fix tiny lexing bugJohn Clements-10/+1
before this change, the parser would parse 14.a() as a method call, but would parse 14.ø() as the floating-point number 14. followed by a function call. This is because it was checking is_alpha, rather than ident_start, and was therefore wrong with respect to unicode.
2013-04-28remove unused flag to parse_local fnJohn Clements-5/+4
2013-04-28remove unused RESTRICT_NO_CALL_EXPRS restrictionJohn Clements-7/+2
2013-04-28undo abstraction over whether to parse attrs in a blockJohn Clements-32/+19
In principle, it seems like a nice idea to abstract over the two functions that parse blocks (one with inner attrs allowed, one not). However, the existing one wound up making things more complex than just having two separate functions, especially after the obsolete syntax is (will be) removed.
2013-04-28refactoring to split foreign_items from itemsJohn Clements-164/+169
2013-04-28parser commentsJohn Clements-6/+20
parser comments
2013-04-28get rid of prec.rsJohn Clements-58/+34
prec.rs no longer had much to do with precedence; the token->binop function fits better in token.rs, and the one-liner defining the precedence of 'as' can go next to the other precedence stuff in ast_util.rs
2013-04-28reindent in parserJohn Clements-4/+4
2013-04-28remove unnecessary functionJohn Clements-7/+1
2013-04-28simplify, based on invariant that items_allowed != foreign_items_allowedJohn Clements-13/+7
2013-04-28adding parse_pathJohn Clements-19/+34
2013-04-28comments, helper function for tests, more informative error messageJohn Clements-2/+17
2013-04-28refactor parse_fn_declJohn Clements-5/+6
2013-04-28parser comments onlyJohn Clements-0/+6
2013-04-28refactoring mod.rsJohn Clements-161/+435
2013-04-28change stage1,stage2,stage2 into not(stage0)John Clements-6/+2
With luck, this will allow rust to compile itself without --cfg flags again...
2013-04-27only use #[no_core] in libcoreDaniel Micay-174/+0
2013-04-26auto merge of #6059 : Kimundi/rust/nice-fail, r=pcwaltonbors-17/+34
r? @brson Unwinding through macros now happens as a call to the trait function `FailWithCause::fail_with()`, which consumes self, allowing to use a more generic failure object in the future.
2013-04-25Made fail! and assert! accept both &'static str and ~str, as well as a fmt! ↵Marvin Löbel-17/+34
like format list. Unwinding through macros now happens as a call to the trait function `FailWithCause::fail_with()`, which consumes self, allowing to use a more generic failure object in the future.
2013-04-25Rename vec::mod2 to vec::mod_zipCorey Richardson-3/+3
2013-04-24Merge remote-tracking branch 'brson/io'Brian Anderson-1/+1
Conflicts: src/libcore/rt/uvio.rs
2013-04-24Remove needless FIXME. Fixes #2811.Niko Matsakis-2/+0
2013-04-23Merge remote-tracking branch 'brson/io'Brian Anderson-1/+1
This also reverts some changes to TLS that were leaking memory. Conflicts: src/libcore/rt/uv/net.rs src/libcore/task/local_data_priv.rs src/libcore/unstable/lang.rs
2013-04-22auto merge of #6017 : brson/rust/revert-span-merge, r=catamorphismbors-147/+13
This reverts commit 6030e3982a52c8d9ede225f992088bb75fba4ef1. This reorders error messages in ways that aren't intended. A more satisfying solution will require an interface that allows diagnostics to be grouped together, so that messages that logically belong together aren't reordered. #4569
2013-04-22auto merge of #6007 : pcwalton/rust/use-mod, r=brsonbors-26/+13
r? @brson
2013-04-22Revert "Errors with the same span print the span once"Brian Anderson-147/+13
This reverts commit 6030e3982a52c8d9ede225f992088bb75fba4ef1.
2013-04-22auto merge of #5966 : alexcrichton/rust/issue-3083, r=graydonbors-27/+29
Closes #3083. This takes a similar approach to #5797 where a set is present on the `tcx` of used mutable definitions. Everything is by default warned about, and analyses must explicitly add mutable definitions to this set so they're not warned about. Most of this was pretty straightforward, although there was one caveat that I ran into when implementing it. Apparently when the old modes are used (or maybe `legacy_modes`, I'm not sure) some different code paths are taken to cause spurious warnings to be issued which shouldn't be issued. I'm not really sure how modes even worked, so I was having a lot of trouble tracking this down. I figured that because they're a legacy thing that I'd just de-mode the compiler so that the warnings wouldn't be a problem anymore (or at least for the compiler). Other than that, the entire compiler compiles without warnings of unused mutable variables. To prevent bad warnings, #5965 should be landed (which in turn is waiting on #5963) before landing this. I figured I'd stick it out for review anyway though.
2013-04-22Make conditions public. #6009Brian Anderson-1/+1