Kevin Cantu
a7359f5b3b
(float) fix some rounding errors when showing as str
...
This seems to fix issue #1876 , and some of the superficial parts of
issue #1375 . The #fmt macro and the to_str functions will round,
rather than truncate, floats as strings.
Other issues remain, and I wrote more code here than intended, but the
following should pass now.
```
fn x() {
assert "3.1416" == #fmt["%.4f", 3.14159];
assert "3" == #fmt["%.0f", 3.14159];
assert "99" == #fmt["%.0f", 98.5];
assert "7.0000" == #fmt["%.4f", 6.999999999];
assert "3.141590000" == #fmt["%.9f", 3.14159];
}
```
2012-06-02 16:38:18 -07:00
Lindsey Kuper
7d0755529e
Add ty_var_integral (WIP on issue #1425 ).
2012-06-02 11:19:27 -07:00
Niko Matsakis
77c470d183
Allow rcvrs to be borrowed; check rcvrs in borrowck properly
2012-06-02 10:08:04 -07:00
Niko Matsakis
cfac9b6833
improve borrowck to handle some frankly rather tricky cases
...
- receivers of method calls are also borrowed
- by-val arguments are also borrowed (needs tests)
- assignment to components can interfere with loans
2012-06-02 10:08:04 -07:00
Niko Matsakis
c5f2c1d61e
add some purity annotations in core
2012-06-02 10:08:00 -07:00
Brian Anderson
c5d168c404
build: Fix bogus test teps
2012-06-01 22:16:58 -07:00
Brian Anderson
8f0bd18d5b
Revert "build: Don't need to build the runtime before starting on core"
...
This reverts commit a94e6c63fd
.
2012-06-01 21:46:10 -07:00
Brian Anderson
a94e6c63fd
build: Don't need to build the runtime before starting on core
2012-06-01 21:34:30 -07:00
Brian Anderson
2a0b6f5fe2
test: xfail-win32 run-pass/companionmod. not sure why it's broke
2012-06-01 21:28:55 -07:00
Tim Chevalier
6e2aa3b998
Port more resource tests to classes
2012-06-01 20:40:35 -07:00
Tim Chevalier
14e3fdea9c
Check that classes are instantiable
...
that is, check that there aren't any mutually recursive cycles between
classes and other types
2012-06-01 20:40:35 -07:00
Tim Chevalier
79787833bb
Make sure classes with dtors are still sendable (but not copyable)
2012-06-01 20:40:35 -07:00
Tim Chevalier
475013fcb6
Comment only: fix typo
2012-06-01 20:40:35 -07:00
Tim Chevalier
de40318037
Tests for copyability and sendability rules for classes
...
Closes #2296
2012-06-01 20:40:35 -07:00
Tim Chevalier
11b4a92fc8
Port another resource test to use classes
2012-06-01 20:40:35 -07:00
Tim Chevalier
facb5c08c6
Enforce rule that classes with dtors aren't copyable
...
The test for this is copy-a-resource.
2012-06-01 20:40:35 -07:00
Tim Chevalier
b67f8e340b
Remove obsolete test
...
This test no longer makes sense with classes instead of resources,
since class types can't be dereferenced.
2012-06-01 20:40:35 -07:00
Tim Chevalier
f6c552d6d7
Update task-killjoin-rsrc to use classes
...
This test was xfailed, but I decided to update it to use classes
anyway. The test currently compiles, but fails with a runtime error.
So it's still xfailed.
2012-06-01 20:40:34 -07:00
Tim Chevalier
053db0208b
Comment only: fix typo
2012-06-01 20:40:34 -07:00
Tim Chevalier
10c141a232
Port more test cases to use classes instead of resources
2012-06-01 20:40:34 -07:00
Tim Chevalier
bc5cb4deb3
Change type_needs_drop to say that any class w/ a dtor needs a drop
...
This was preventing dtors from running for class types that didn't
have pointer fields.
2012-06-01 20:40:34 -07:00
Brian Anderson
1e801baa84
Revert "test: xfail-win32 run-pass/cci_borrow.rs"
...
This reverts commit 30f874bac5
.
2012-06-01 18:27:38 -07:00
Brian Anderson
7737c094af
Revert "test: xfail-win32 run-pass/cci_capture_clause.rs"
...
This reverts commit 2ab1b5838b
.
2012-06-01 18:27:30 -07:00
Brian Anderson
7335b2a51c
compiletest: Add the libaux path to PATH on win32
2012-06-01 18:24:55 -07:00
Michael Sullivan
8f7364b26d
Don't try to compute kinds of fictitious types. Indicate a bug instead.
2012-06-01 17:58:40 -07:00
Brian Anderson
2ab1b5838b
test: xfail-win32 run-pass/cci_capture_clause.rs
2012-06-01 17:40:14 -07:00
Brian Anderson
30f874bac5
test: xfail-win32 run-pass/cci_borrow.rs
2012-06-01 17:26:01 -07:00
Brian Anderson
7b862a5278
core: Fix handling of 0-padded floats with precision in #fmt
2012-06-01 16:10:37 -07:00
Brian Anderson
630c084da6
test: Move tests with rustc deps into run-pass-fulldeps
...
These tests require a lot more to be built before running so are not part of
check-lite
2012-06-01 16:01:56 -07:00
Brian Anderson
5dc236cdac
build: Add check-lite target
...
Runs the core, std, run-pass, run-fail, compile-fail tests for stage2 and
builds only their dependencies.
We'll use this on the bots' try branch.
2012-06-01 12:28:03 -07:00
Brian Anderson
c4471dd685
build: Remove debug/ndebug cfg. Unused
2012-06-01 11:42:55 -07:00
Niko Matsakis
dd8f76c619
squelch warnings in tests
2012-06-01 11:10:27 -07:00
Niko Matsakis
6c6ad229a3
break up borrowck into modules and begin to document how it works
2012-06-01 10:50:19 -07:00
Lindsey Kuper
3c622a5b12
Clarifying comments in test.
2012-06-01 10:30:50 -07:00
Lindsey Kuper
43eb5f0a2e
More tests wrt #2263 .
2012-06-01 09:26:48 -07:00
Lindsey Kuper
9a89a7503d
Clarify comments in test.
2012-06-01 09:26:48 -07:00
Niko Matsakis
5b40066a47
register snapshots
2012-06-01 05:18:19 -07:00
Brian Anderson
4c8bc19ad2
rt: Refactor task failure to go through rust_task_fail
...
This is the place to but a breakpoint. We will raise SIGINT here
to break into the debugger.
2012-05-31 23:47:52 -07:00
Michael Sullivan
e47962f6a9
Have lint build up a table of the warning settings on a per item basis for later use.
2012-05-31 19:07:24 -07:00
Michael Sullivan
d1a65da835
Time lint in the driver like every other pass, instead of in lint.
2012-05-31 19:07:24 -07:00
Michael Sullivan
af228711e5
Make lint properly deal with nested items. Closes #2473 .
2012-05-31 19:07:24 -07:00
Michael Sullivan
84adcb9806
Rework lint to copy lint mode maps when changing them.
2012-05-31 19:07:24 -07:00
Michael Sullivan
7b02f29d47
Switch lint over to using a smallintmap.
2012-05-31 18:38:42 -07:00
Michael Sullivan
3dfb174793
Remove some dead code from kind checking.
2012-05-31 18:38:42 -07:00
Graydon Hoare
574b3e81e6
Add some convenience helpers to getopts. Close #1837 .
2012-05-31 17:02:03 -07:00
Brian Anderson
89aa28289b
rustc: Use fewer boxes in typestate
2012-05-31 16:20:58 -07:00
Graydon Hoare
57f399bd63
Implement 2 kinds of char / str escaping. Use in rustc. Close #2306 .
2012-05-31 15:32:29 -07:00
Niko Matsakis
c2ce2741a7
allow mutable vectors and so forth to be used as immutable slices
2012-05-31 15:07:09 -07:00
Eric Holk
0470abe1d2
Allow some resources to be considered const.
2012-05-31 13:55:54 -07:00
Eric Holk
3acc3c4d85
Make std::map require const keys.
2012-05-31 13:55:54 -07:00