diff options
| author | Patrick Walton <[email protected]> | 2011-02-28 19:07:26 -0800 |
|---|---|---|
| committer | Patrick Walton <[email protected]> | 2011-02-28 19:07:26 -0800 |
| commit | 8d8b3d985a02153a349e72bd9840231b43c51864 (patch) | |
| tree | aa09216bdd0b4937759d5d7624eace7bbc7fca4b /src | |
| parent | rustc: Trivial cleanup: Remove unused "arity" tag (diff) | |
| download | rust-8d8b3d985a02153a349e72bd9840231b43c51864.tar.xz rust-8d8b3d985a02153a349e72bd9840231b43c51864.zip | |
rustc: Mark tags that have subtypes with dynamic size as dynamic
Diffstat (limited to 'src')
| -rw-r--r-- | src/comp/middle/ty.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/comp/middle/ty.rs b/src/comp/middle/ty.rs index 25ef8709..8b9ef6d1 100644 --- a/src/comp/middle/ty.rs +++ b/src/comp/middle/ty.rs @@ -471,6 +471,13 @@ fn type_has_dynamic_size(@t ty) -> bool { i += 1u; } } + case (ty_tag(_, ?subtys)) { + auto i = 0u; + while (i < _vec.len[@t](subtys)) { + if (type_has_dynamic_size(subtys.(i))) { ret true; } + i += 1u; + } + } case (ty_param(_)) { ret true; } case (_) { /* fall through */ } } |