Graydon Hoare
56c6c65186
Add preliminary test of walking data pointers via reflection.
2012-06-08 19:00:59 -07:00
Graydon Hoare
7a699852cb
Pass names of fields and variants when reflecting.
2012-06-08 16:41:38 -07:00
Graydon Hoare
d182c14247
Visit the substructure for classes and enums as well.
2012-06-08 15:36:02 -07:00
Niko Matsakis
9105cb6d5d
revise map interface so that K need not be copyable
2012-06-08 14:35:11 -07:00
Graydon Hoare
dc94ccc4a4
More work on reflect, only missing enum and class substructures.
2012-06-08 13:26:15 -07:00
Brian Anderson
7ef825bb60
Revert "remove alias analysis and replace with borrowck"
...
18s perf regression compiling rustc with opts
This reverts commit 7f6ee0ce0df8af4c21b065cb49b95079ae643f77.
2012-06-07 19:42:27 -07:00
Niko Matsakis
7f6ee0ce0d
remove alias analysis and replace with borrowck
...
cc #2540
2012-06-07 16:46:57 -07:00
Graydon Hoare
9ee0137018
Refactor reflect.rs, begin visiting type substructures.
2012-06-07 13:51:41 -07:00
Brian Anderson
5f4837ad6a
core: Start on a stack walker
2012-06-06 23:39:56 -07:00
Brian Anderson
125552fb19
rustc: Add frame_address intrinsic
2012-06-06 23:39:56 -07:00
Brian Anderson
469ff08e64
rustc: Enable #[cfg(windows)] and #[cfg(unix)]
2012-06-06 23:39:09 -07:00
Brian Anderson
eed3a36511
rustc: Add 'target_family' to default configuration
2012-06-06 23:39:09 -07:00
Tim Chevalier
cd02046de4
merge
2012-06-06 22:30:52 -07:00
Tim Chevalier
0327dc0b18
Insert missing maybe_print_comment call for class destructors
...
While it wasn't the original issue, the first program from #2487
failed the pretty-printing test because of this, so it's still a good
test case :-)
It also turns out that the second program from #2487 now triggers a
kind error, so I figured I might as well add it as a test case.
2012-06-06 22:09:10 -07:00
Graydon Hoare
3251bd690e
Fix some copy-paste bugs in visit glue, un-xfail reflect-visit-type.
2012-06-06 19:38:56 -07:00
Tim Chevalier
f4fb0f9eea
Handle regions correctly in class ctors and dtors
...
Class ctors and dtors were always getting assigned the empty region
before, which meant a reference to the "self" region in a ctor argument
got resolved to a named region called "self" rather than the class's
self region, which led to a rather confusing error message as documented
in #2502 .
Closes #2502
2012-06-06 19:23:26 -07:00
Niko Matsakis
3b4cfdeee2
Merge remote-tracking branch 'mozilla/incoming'
...
Conflicts:
src/rustc/middle/tstate/auxiliary.rs
2012-06-06 19:00:34 -07:00
Niko Matsakis
dd37c0a41e
mask extra borrowck errors (should find out how to not report those)
2012-06-06 18:42:06 -07:00
Niko Matsakis
8ebbf464f5
minor changes to tests so they pass borrowck
2012-06-06 18:37:58 -07:00
Graydon Hoare
107442d994
Add some testcases for bug #2470 .
2012-06-06 18:26:46 -07:00
Brian Anderson
ef32ffd0b1
core: Remove swappable. Unused
2012-06-06 17:48:45 -07:00
Tim Chevalier
db31969d4a
prefix an _ to the name of an unused variable
2012-06-06 17:19:39 -07:00
Graydon Hoare
be83a12ff7
Add some testcases for bug #2470 .
2012-06-06 16:01:12 -07:00
Tim Chevalier
a5c9e8d59e
Fix tests to avoid empty classes
2012-06-06 15:08:24 -07:00
Tim Chevalier
feece9814a
Revert "Revert "Fix test case so the class in it is non-empty" due to test failures"
...
This reverts commit c6e16c5668a86245259a4f542a62199b2023b89b.
2012-06-06 15:08:24 -07:00
Tim Chevalier
5e8ef74e22
Revert "Revert "Forbid classes with no fields" due to test failures"
...
This reverts commit e56a6e8cb0ca2be26bb71918447459865803a630.
2012-06-06 15:08:24 -07:00
Tim Chevalier
0218418428
Merge branch 'master' into really-really-to-snap
2012-06-06 12:22:14 -07:00
Patrick Walton
d53e633bd5
Revert "test: Remove swappable-test" due to test failures
...
This reverts commit aabf84cdd81351cc63ebdc9e2427203621d19950.
2012-06-06 11:39:52 -07:00
Patrick Walton
055158d051
Revert "Merge pull request #2516 from mozilla/incoming" due to failures
...
This reverts commit adb717b5fa3500c50ced39266c76fc909808c189, reversing
changes made to aabf84cdd81351cc63ebdc9e2427203621d19950.
2012-06-06 11:39:19 -07:00
Tim Chevalier
17e707cf6d
Fix test case so the class in it is non-empty
2012-06-05 21:13:25 -07:00
Tim Chevalier
8fd9986f0f
Forbid classes with no fields
...
Classes with no fields don't really make sense, so forbid them
(just as records with no fields aren't allowed). Closes #2509
2012-06-05 20:47:55 -07:00
Tim Chevalier
7daf986aec
Port remaining run-fail tests to use classes instead of resources
2012-06-05 15:11:33 -07:00
Brian Anderson
aabf84cdd8
test: Remove swappable-test
2012-06-05 14:59:43 -07:00
Brian Anderson
d3c641678e
rustc: Put uniques into addrspace 1
2012-06-05 14:03:25 -07:00
Eric Holk
1e8f501343
Machine types are different from int/uint, etc (Issue #2187 )
2012-06-04 19:16:47 -07:00
Patrick Walton
a542258277
Add a test case for previous commit
2012-06-04 18:56:50 -07:00
Brian Anderson
6e0085210c
core: Make uint::to_str faster
2012-06-04 14:30:57 -07:00
Niko Matsakis
3c4baf694e
better support for classes with polymorphic methods
2012-06-04 11:46:23 -07:00
Niko Matsakis
01b5777c8b
prohibit type parameters in native fns and other minor fixes
...
trans now can safely assert that it never sees a type param
2012-06-03 20:03:08 -07:00
Brian Anderson
9826541c0e
Merge pull request #2492 from tedhorst/mandelbrot_args
...
fix args to shootout-mandelbrot benchmark
2012-06-03 15:02:16 -07:00
Brian Anderson
802a8c0f19
test: Add a test that logs are truncated with ellipses
2012-06-03 14:44:03 -07:00
Ted Horst
3c4a1ab0c4
fix args to shootout-mandelbrot benchmark
2012-06-03 09:45:23 -05:00
Brian Anderson
027e97b129
bench: Add an unwinding benchmark
2012-06-02 17:49:36 -07:00
Brian Anderson
3ab738f4af
Add more #fmt float tests
2012-06-02 16:45:20 -07:00
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
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
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
de40318037
Tests for copyability and sendability rules for classes
...
Closes #2296
2012-06-01 20:40:35 -07:00