diff options
| author | Roy Frostig <[email protected]> | 2010-08-31 13:01:51 -0700 |
|---|---|---|
| committer | Roy Frostig <[email protected]> | 2010-08-31 13:01:57 -0700 |
| commit | 47e86a05ae7c76046319e8f326f2e85de1c505b1 (patch) | |
| tree | fbd7ba67c002e7d4b9546504968ed0c967b876d9 /src/test | |
| parent | Er, this would be the hunk that actually failed to get committed last time. (diff) | |
| download | rust-47e86a05ae7c76046319e8f326f2e85de1c505b1.tar.xz rust-47e86a05ae7c76046319e8f326f2e85de1c505b1.zip | |
Fix rust_vec constructor assertion failure caused by slow path of upcall_vec_grow. Add testcase.
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/run-pass/vec-append.rs | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/test/run-pass/vec-append.rs b/src/test/run-pass/vec-append.rs index 4324ee25..e52c6283 100644 --- a/src/test/run-pass/vec-append.rs +++ b/src/test/run-pass/vec-append.rs @@ -1,10 +1,25 @@ // -*- rust -*- -fn main() { +fn fast_growth() { let vec[int] v = vec(1,2,3,4,5); v += vec(6,7,8,9,0); + log v.(9); check(v.(0) == 1); check(v.(7) == 8); check(v.(9) == 0); } + +fn slow_growth() { + let vec[int] v = vec(); + let vec[int] u = v; + v += vec(17); + + log v.(0); + check (v.(0) == 17); +} + +fn main() { + fast_growth(); + slow_growth(); +} |