diff options
author | Björn Gustavsson <[email protected]> | 2012-09-05 14:59:15 +0200 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2012-10-09 15:24:40 +0200 |
commit | e38dc4aaeb769aaf531c66e508f475ed24c25ffd (patch) | |
tree | 47a08e6f9ef0699a571a631ec5a1a2467ac4d7bc /lib | |
parent | 83cfc8c8414edc956d7e8e3a1402c17bf35421a6 (diff) | |
download | otp-e38dc4aaeb769aaf531c66e508f475ed24c25ffd.tar.gz otp-e38dc4aaeb769aaf531c66e508f475ed24c25ffd.tar.bz2 otp-e38dc4aaeb769aaf531c66e508f475ed24c25ffd.zip |
compile: Fix bug in selection of passes
Diffstat (limited to 'lib')
-rw-r--r-- | lib/compiler/src/compile.erl | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/compiler/src/compile.erl b/lib/compiler/src/compile.erl index 818945d0fd..2f374e6fb0 100644 --- a/lib/compiler/src/compile.erl +++ b/lib/compiler/src/compile.erl @@ -553,12 +553,12 @@ select_list_passes_1([{iff,Flag,{done,Ext}}|Ps], Opts, Acc) -> end; select_list_passes_1([{iff=Op,Flag,List0}|Ps], Opts, Acc) when is_list(List0) -> case select_list_passes(List0, Opts) of - {done,_}=Done -> Done; + {done,List} -> {done,reverse(Acc) ++ List}; {not_done,List} -> select_list_passes_1(Ps, Opts, [{Op,Flag,List}|Acc]) end; select_list_passes_1([{unless=Op,Flag,List0}|Ps], Opts, Acc) when is_list(List0) -> case select_list_passes(List0, Opts) of - {done,_}=Done -> Done; + {done,List} -> {done,reverse(Acc) ++ List}; {not_done,List} -> select_list_passes_1(Ps, Opts, [{Op,Flag,List}|Acc]) end; select_list_passes_1([P|Ps], Opts, Acc) -> |