diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/test/auxiliary/issue-2631-a.rs | 15 | ||||
| -rw-r--r-- | src/test/run-pass/issue-2631-b.rs | 17 |
2 files changed, 32 insertions, 0 deletions
diff --git a/src/test/auxiliary/issue-2631-a.rs b/src/test/auxiliary/issue-2631-a.rs new file mode 100644 index 00000000000..c2503bde277 --- /dev/null +++ b/src/test/auxiliary/issue-2631-a.rs @@ -0,0 +1,15 @@ +#[link(name = "req")]; +#[crate_type = "lib"]; + +use std; + +import dvec::*; +import dvec::dvec; +import std::map::hashmap; + +type header_map = hashmap<str, @dvec<@str>>; + +// the unused ty param is necessary so this gets monomorphized +fn request<T: copy>(req: header_map) { + let _x = *(*req.get("METHOD"))[0u]; +} diff --git a/src/test/run-pass/issue-2631-b.rs b/src/test/run-pass/issue-2631-b.rs new file mode 100644 index 00000000000..5e0e0302839 --- /dev/null +++ b/src/test/run-pass/issue-2631-b.rs @@ -0,0 +1,17 @@ +// xfail-fast +// aux-build:issue-2631-a.rs + +use req; +use std; + +import req::*; +import std::map::*; +import std::map::str_hash; +import dvec; + +fn main() { + let v = [mut @"hi"]; + let m: req::header_map = str_hash(); + m.insert("METHOD", @dvec::from_vec(v)); + request::<int>(m); +} |
