Brandon Sanderson
5478ebb553
Add with_mem_writer to std::rt::io::mem.
...
This is in many ways a replacement for the current
std::io::with_str_writer.
2013-09-06 21:21:59 -07:00
novalis
c891fa326d
Fix #6031 . Allow symbolic log levels, not just numbers.
2013-09-06 23:30:17 -04:00
bors
25f3b29c61
auto merge of #9010 : aaronlaursen/rust/master, r=alexcrichton
...
Here's a fix for issue #7588 , "Overflow handling of from_str methods is broken".
The integer overflow issues are taken care of by checking to see if the multiply-by-radix-and-add-next-digit process is reversible. If it overflowed, then some information is lost and the process is irreversible, in which case, None is returned.
Floats now consistently return Some(Inf) of Some(-Inf) on overflow thanks to a call to NumStrConv::inf() and NumStrConv::neg_inf() respectively when the overflow is detected (which yields a value of None in the case of ints and uints anyway).
This is my first contribution to Rust, and my first time using the language in general, so any and all feedback is appreciated.
2013-09-06 20:10:57 -07:00
bors
12bca20d78
auto merge of #9030 : tikue/rust/glob, r=huonw
2013-09-06 19:01:01 -07:00
Tim Kuehn
39ce095ebd
use enumerate in place of 'for ti in range(i, tokens.len()) ... match tokens[ti] ...'
2013-09-06 21:54:03 -04:00
bors
f883159cdf
auto merge of #9019 : alexcrichton/rust/reconfigure-llvm, r=brson
...
@Chris-Morgan ran into this, turns out if we have a clean llvm in the old location we won't rebuild/reconfigure even though we should.
2013-09-06 16:51:00 -07:00
John Clements
956129cbb2
ident->name
2013-09-06 13:35:14 -07: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
4664d3320d
comment fix
2013-09-06 13:35:14 -07:00
John Clements
114b1a7e97
add hygiene test, add copyright to another
2013-09-06 13:35:14 -07:00
John Clements
d8c77e082b
make macro hygienic
2013-09-06 13:35:13 -07:00
John Clements
6c294ba538
add test case, cleanup
2013-09-06 13:35:13 -07:00
John Clements
fe1d21caec
add display_sctable fn to ast_util
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
e681e7843e
added string_to_tts
2013-09-06 13:35:13 -07:00
John Clements
985a92ec12
comments
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
7b548e7180
expose mtwt_marksof for testing
2013-09-06 13:35:12 -07:00
John Clements
7dca301cf4
ident->name
2013-09-06 13:35:12 -07:00
John Clements
bba10ec812
xfailed unhygienic test
2013-09-06 13:35:12 -07:00
John Clements
76c1e0497d
ident->name
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
ec0a64def5
memoization for resolve
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
d9ba61c786
ident->name in NamedField, elsewhere
2013-09-06 13:35:11 -07:00
John Clements
9ab2cfdae6
added utility function
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
dfa04cecca
add fold_mac field to fold.rs
2013-09-06 13:35:10 -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
3621c674cc
comments
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
f68aa459ea
added IterBytes for 4-tuples
2013-09-06 13:35:10 -07:00
John Clements
58e7598c2e
added gensym_copy mechanism to ensure sharing of pointers in the interner
...
this makes comparisons constant-time, and enables spelling-comparison
of identifiers, crucial in many parts of resolve.
2013-09-06 13:35:10 -07:00
John Clements
9d33001a90
added test for ptr_eq on fresh_name-generated idents
2013-09-06 13:35:09 -07:00
John Clements
cd4e637ae4
fixed bug in fold's traversal of cast exprs
2013-09-06 13:35:09 -07:00
John Clements
d876a721d2
new test that uncovers bug in fold
2013-09-06 13:35:09 -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
9071ac60b6
re-add debug version
2013-09-06 13:35:09 -07:00