From 2f8daabdbdd3d03a4db8e1680a8b2773f0561d5e Mon Sep 17 00:00:00 2001 From: Stavros Aronis Date: Thu, 22 Dec 2011 16:38:21 +0200 Subject: Allow t_opaque_structure to handle multiple opaque types --- lib/hipe/cerl/erl_types.erl | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) (limited to 'lib/hipe/cerl/erl_types.erl') diff --git a/lib/hipe/cerl/erl_types.erl b/lib/hipe/cerl/erl_types.erl index 620fed365e..aa4758c1d3 100644 --- a/lib/hipe/cerl/erl_types.erl +++ b/lib/hipe/cerl/erl_types.erl @@ -424,12 +424,7 @@ t_has_opaque_subtype(T) -> -spec t_opaque_structure(erl_type()) -> erl_type(). t_opaque_structure(?opaque(Elements)) -> - case ordsets:size(Elements) of - 1 -> - [#opaque{struct = Struct}] = ordsets:to_list(Elements), - Struct; - _ -> throw({error, "Unexpected multiple opaque types"}) - end. + t_sup([Struct || #opaque{struct = Struct} <- ordsets:to_list(Elements)]). -spec t_opaque_module(erl_type()) -> module(). -- cgit v1.2.3