3714 Commits

Author SHA1 Message Date
Daniel Micay
7f0fa143bc switch LinearMap to current constructor convention 2013-01-23 18:01:24 -05:00
Tim Chevalier
ab13beb05a Merge pull request #4587 from sanxiyn/divide-by-zero
Handle divide by zero in constant evaluator
2013-01-23 14:56:07 -08:00
Patrick Walton
154488df19 libsyntax: Implement assert as a macro (called fail_unless! on a transitionary basis to avoid conflicting with the keyword right now). r=brson 2013-01-23 14:46:24 -08:00
Patrick Walton
54b2cad8b3 libsyntax: Remove fn() unsafe { ... }. r=graydon 2013-01-23 14:41:08 -08:00
John Clements
0b958e74ac renaming to adhere to conventions 2013-01-23 11:46:19 -08:00
Patrick Walton
6dbfb5da0b libcore: Use LLVM intrinsics for floor; add a new Perlin noise benchmark. r=brson 2013-01-23 11:37:32 -08:00
Daniel Micay
b7ef28c33a rename send_map to hashmap
This makes the module much more discoverable, and is in line with the
'treemap' naming.
2013-01-23 14:25:01 -05:00
Patrick Walton
778aec998b libsyntax: Implement the + syntax for multiple trait bounds. r=tjc 2013-01-23 11:15:10 -08:00
Tim Chevalier
995ccc0d82 Merge pull request #4596 from Trinick/tomutrename
core: Rename to_mut and from_mut to cast_to_mut and cast_from_mut
2013-01-23 10:56:08 -08:00
Trinick
9dc8e96c5f core: Rename to_mut and from_mut to cast_to_mut and cast_from_mut 2013-01-23 10:09:45 +00:00
Tim Chevalier
54344c2468 testsuite: Add tests for mutable function arguments 2013-01-22 23:34:35 -08:00
Seo Sanghyeon
3ed39ce26f Handle divide by zero in constant evaluator 2013-01-23 15:07:00 +09:00
Tim Chevalier
14d721388b Add test case for change in 039bfe 2013-01-22 16:22:55 -08:00
Josh Matthews
72259e0772 Translate const references to extern functions as *i8 instead of the typical closure pair. Fixes #4522. 2013-01-22 16:22:55 -08:00
Tim Chevalier
9d672671e2 Make borrowck's notion of scopes consistent with trans's notion of scopes
This eliminates an ICE in trans where the scope for a particular
borrow was a statement ID, but the code in trans that does cleanups
wasn't finding the block with that scope. As per #3860

preserve looks at a node ID to see if it's for a statement -- if it
is, it uses the enclosing scope instead when updating the map that
trans looks at later.

I added a comment noting that this is not the best fix (since it may
cause boxes to be frozen for longer than necessary) and referring
to #3511.

r=nmatsakis
2013-01-22 15:59:45 -08:00
Tim Chevalier
885f0a2eab testsuite: Un-xfail test for #3029 and move to run-fail 2013-01-20 20:35:24 -08:00
Tim Chevalier
b9920b052b testsuite: Tweak tests for #3888 2013-01-20 19:51:33 -08:00
Tim Chevalier
e5bf6d1afa testsuite: Update error message, unbreak build 2013-01-20 18:22:11 -08:00
Tim Chevalier
ef0f71dc3f testsuite: Add xfailed test for #4335 2013-01-19 17:39:15 -08:00
Tim Chevalier
1e1707ccb8 testsuite: Add license 2013-01-19 17:38:12 -08:00
Tim Chevalier
96b4f43675 Handle region errors where the actual scope is a statement
Prevents a case of "unknown scope, this is a bug".

I judged this too small to review. Closes #4500
2013-01-19 17:06:36 -08:00
Graydon Hoare
e51ec26dd7 xfail-fast the #[main] tests, r=burningtree 2013-01-18 17:44:26 -08:00
Tim Chevalier
90372da5a8 testsuite: Update error messages. Unbreak build, I hope 2013-01-18 13:35:07 -08:00
Niko Matsakis
440f8dfc4e Correct tests
rs=breakage
2013-01-17 18:45:57 -08:00
Niko Matsakis
532c94d0f1 Propagate expected types through block expressions.
r=graydon
2013-01-17 18:45:48 -08:00
Niko Matsakis
9fed56ed90 When decoding types, indicate to the def-id conversion function what kind of
def-id we have, so that the inliner can distinguish between external and
internal def-ids.  Also add some comments explaining the distinction!

Fixes #4516.

r=graydon
2013-01-17 18:45:45 -08:00
Patrick Walton
9f7514bfae test: Fix busted compile-fail tests. rs=bustage 2013-01-17 16:30:59 -08:00
Patrick Walton
f405e41d7a librustc: Implement write guards for borrowing @mut to & or &mut. r=nmatsakis 2013-01-17 11:50:20 -08:00
Patrick Walton
a2ec5400ff Merge pull request #4493 from jbclements/rename-moved-variable-to-moved-value
s/moved variable/moved value/
2013-01-16 12:30:55 -08:00
Graydon Hoare
84825ee310 librustc: Make the default sigil for block lambdas & instead of @. 2013-01-15 17:57:45 -08:00
John Clements
3bf8b8af98 s/moved variable/moved value/ 2013-01-14 17:38:22 -08:00
ILyoan
b7cefd0c96 allowing the entry point name to be something other than main
add build tests
2013-01-14 13:58:13 -08:00
Jed Davis
3aca4a1663 Regression tests for passing enum-typed consts by reference.
If the PointerCast in trans_def_lvalue is removed, these cases cause
LLVM assertion failures.
2013-01-11 23:42:51 -08:00
Jed Davis
79f0d67d28 Add more tests for enum constants.
The tests have consts defined both before and after their uses in order
to prevent bugs that depend on the order in which they are translated.
2013-01-11 23:42:51 -08:00
Andrew Paseltiner
ea937dca89 test: add test for overloading logical negation operator 2013-01-11 16:27:12 -05:00
Patrick Walton
a82c8b3da2 test: XFAIL issue_3882 due to strange Windows failure. rs=failure 2013-01-11 10:57:24 -08:00
Tim Chevalier
329a57882f Add xfailed test for #3973 2013-01-10 15:35:41 -08:00
Niko Matsakis
fe0f84823a add two more copies required in word-count rs=breakage 2013-01-10 15:02:31 -08:00
Tim Chevalier
ae0ca9c646 Add working test for issue 3935 and xfailed test for issue 3888 2013-01-10 14:38:37 -08:00
Tim Chevalier
e0850d11ec Add test cases: one xfailed, one not 2013-01-10 14:16:02 -08:00
Niko Matsakis
89ed595e30 correct expected error msgs in various tests rs=breakage 2013-01-10 13:58:14 -08:00
Tim Chevalier
8a687dd8e4 tests: Add two test cases, one xfailed 2013-01-10 13:44:27 -08:00
Niko Matsakis
737e115646 mode: reset mode on entry to fn body.
This is an interim fix to address the "Beware!" unsoundness.  I have a
more comprehensive rewrite of mode.rs in the pipeline.

r=pcwalton
2013-01-10 13:17:25 -08:00
Patrick Walton
2a1b6c4de9 librustc: Implement &static as the replacement for Durable. r=nmatsakis 2013-01-10 11:16:54 -08:00
Patrick Walton
982830c836 librustc: Allow the type parameter version of Self to be spelled with a capital S 2013-01-10 10:37:22 -08:00
Graydon Hoare
61210e01f9 test: fix check-fast breakage. 2013-01-10 10:24:18 -08:00
Niko Matsakis
2b92962aa2 A collection of refactorings that I found it hard/tiresome to divide:
- Make `extern fn()` assignable to any closure type, rather than
  a subtype.
- Remove unused int_ty_set and float_ty_set
- Refactor variable unification and make it more DRY
- Do fn sub/lub/glb on the level of fn_sig
- Rename infer::to_str::ToStr to infer::to_str::InferStr
- Capitalize names of various types
- Correct hashing of FnMeta
- Convert various records-of-fns into structs-of-fns.  This is both
  eliminating use of deprecated features and more forwards compatible
  with fn reform.

r=pcwalton
2013-01-09 14:59:07 -08:00
Patrick Walton
2db3abddcd librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc 2013-01-08 22:02:35 -08:00
Patrick Walton
44ab00ee37 Revert "librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc"
This reverts commit a8d37af2473da79be704c9ce2374f278c47177b6.
2013-01-08 19:29:16 -08:00
Patrick Walton
a8d37af247 librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc 2013-01-08 19:27:57 -08:00