Huon Wilson
07351b44c6
syntax: implement labelled breaks for for.
...
`for` desugars to `loop` so it is trivial to just desugar to `loop` while
retaining any label.
2013-09-08 22:08:01 +10:00
John Clements
eabeba3ef3
added index to test cases, more debugging output
2013-09-06 13:35:14 -07:00
John Clements
1ecc1e51c0
quote_* macros no longer need to be capturing
...
This is actually almost a problem, because those were my poster-child
macros for "here's how to implement a capturing macro." Following this
change, there will be no macros that use capturing; this will probably
make life unpleasant for the first person that wants to implement a
capturing macro. I should probably create a dummy_capturing macro,
just to show how it works.
2013-09-06 13:35:14 -07:00
John Clements
6c294ba538
add test case, cleanup
2013-09-06 13:35:13 -07:00
John Clements
8330411688
fixed a bug that caused double-expand-traversal of macros that expand into modules.
2013-09-06 13:35:13 -07:00
John Clements
fddc815ada
WIP: adding mark-cancelling for macro_rules
2013-09-06 13:35:13 -07:00
John Clements
1a06584117
comment on hygienic context extension train fns
2013-09-06 13:35:13 -07:00
John Clements
dc7f3df27f
awesome new bug! added test case
2013-09-06 13:35:12 -07:00
John Clements
dbf4e19ea5
remove unneeded imports, clean up unused var warnings
2013-09-06 13:35:12 -07:00
John Clements
60562ac9f8
whitespace, reindentation, and comments only
2013-09-06 13:35:12 -07:00
John Clements
0954e66442
uncomment mtwt_resolve calls
2013-09-06 13:35:11 -07:00
John Clements
bc2a44daf1
fix one remaining token comparison, refactor token comparison to avoid == check
2013-09-06 13:35:11 -07:00
John Clements
e29d25338d
remove dead code
2013-09-06 13:35:11 -07:00
John Clements
b9bb4abcb6
capturing macros now implemented
2013-09-06 13:35:11 -07:00
John Clements
2c51e262f3
add fold_mac clause to fun_to_ctxt_folder
2013-09-06 13:35:11 -07:00
John Clements
3261b6eece
WIP: adding context to macros
2013-09-06 13:35:10 -07:00
John Clements
34f31e2961
rework fold so that fold_tts takes an ast_fold rather than a thunk, stop using closures in ident traversal
2013-09-06 13:35:10 -07:00
John Clements
09e6dda4f2
add temporarily unused ctxt field to mac_invoc_tt
2013-09-06 13:35:10 -07:00
John Clements
0c31c930ff
add test case for macro token comparison
2013-09-06 13:35:10 -07:00
John Clements
963dab5dcb
marking on both input and output from macros. nice shiny new test case framework
2013-09-06 13:35:10 -07:00
John Clements
015ba31c02
test case support fns, remove debugging test case
2013-09-06 13:35:09 -07:00
John Clements
62fee04ae9
test case work
2013-09-06 13:35:09 -07:00
John Clements
1f8e856430
re-add lost call to expand_block_elts
2013-09-06 13:35:09 -07:00
John Clements
7a9af098f0
test case work
2013-09-06 13:35:09 -07:00
John Clements
f5ab867119
use empty_ctxt to simplify downstream
2013-09-06 13:35:09 -07:00
John Clements
a666ddc135
make comparison of special_idents non-hygienic
2013-09-06 13:35:08 -07:00
John Clements
3965725d51
comments
2013-09-06 13:35:08 -07:00
John Clements
9de40dfc87
remove FIXME #2888 , now bug is fixed
2013-09-06 13:35:08 -07:00
John Clements
98a6cbdba3
comments only
2013-09-06 13:35:08 -07:00
John Clements
91d3c36430
adding test case to check marking/unmarking
2013-09-06 13:35:08 -07:00
John Clements
93337f0daa
separate ItemDecorator from ItemDecorator
2013-09-06 13:35:08 -07:00
John Clements
431ede40df
removed unneccessary SyntaxExpander structs
2013-09-06 13:35:07 -07:00
John Clements
6c6d053b01
renaming test cases
2013-09-06 13:35:07 -07:00
John Clements
2f6498f7b4
flip the switch on let renaming
2013-09-06 13:35:07 -07:00
John Clements
fa6c981606
add hygiene support fns, move them around.
...
also adds test cases
2013-09-06 13:35:06 -07:00
John Clements
72ee6af4d4
compare macro tokens hygienically (commented out)
2013-09-06 13:35:06 -07:00
John Clements
e1734f6d38
rename resolve to mtwt_resolve
2013-09-06 13:35:06 -07:00
Alex Crichton
8a966183fe
Remove the __log function for __log_level
...
Also redefine all of the standard logging macros to use more rust code instead
of custom LLVM translation code. This makes them a bit easier to understand, but
also more flexibile for future types of logging.
Additionally, this commit removes the LogType language item in preparation for
changing how logging is performed.
2013-09-05 01:48:20 -07:00
Chris Morgan
6b7b8f2682
Add an `unreachable!()` macro.
...
Rationale: having a function which fails means that the location of
failure which is output is that of the unreachable() function, rather
than the caller.
This is part of #8991 but is not all of it; current usage of
``std::util::unreachable()`` must remain so for the moment, until a new
snapshot is made; then I will remove that function entirely in favour of
using this macro.
2013-09-05 16:41:27 +10:00
bors
b161e09e03
auto merge of #8977 : pnkfelix/rust/fsk-followup-on-6009-rebased, r=alexcrichton
...
Fix #6009 . Rebased version of #8970 . Inherits review from alexcrichton.
2013-09-04 16:20:46 -07:00
Daniel Micay
62a3434529
stop treating char as an integer type
...
Closes #7609
2013-09-04 08:07:56 -04:00
Felix S. Klock II
6fbb64acbe
Make non-pub condition! expand to non-pub mod. Fix #6009 .
2013-09-04 10:05:10 +02:00
bors
383073883f
auto merge of #8963 : jmgrosen/rust/issue-8881, r=alexcrichton
2013-09-03 19:46:42 -07:00
jmgrosen
4a18d46130
Fixes #8881 . condition! imports parent's pub identifiers
2013-09-03 16:11:00 -07:00
bors
dee9d7f97f
auto merge of #8945 : alexcrichton/rust/ifmt-dont-move, r=thestinger
2013-09-03 09:50:58 -07:00
Marvin Löbel
7419085337
Modernized a few more types in syntax::ast
2013-09-03 14:45:06 +02:00
Alex Crichton
7e7024718a
Don't have format! move out of local variables
2013-09-02 23:53:13 -07:00
Marvin Löbel
857f867320
Renamed syntax::ast::ident -> Ident
2013-09-02 02:51:21 +02:00
Marvin Löbel
539f37925c
Modernized a few type names in rustc and syntax
2013-09-01 14:43:26 +02:00
Patrick Walton
4f32a2d854
librustc: Fix merge fallout.
2013-08-27 18:47:57 -07:00