diff options
author | Niclas Eklund <[email protected]> | 2011-01-20 12:14:36 +0100 |
---|---|---|
committer | Niclas Eklund <[email protected]> | 2011-01-20 12:14:36 +0100 |
commit | 0ef3320c556912b4d9f05f89ec47154eb2b5834a (patch) | |
tree | 6105bc92ce5bd5cb2dd56c0f71e7a92226e89576 /lib/ic/src/ic_pragma.erl | |
parent | 1bff9d79218bcb3c44737cb2bfefac85c6f0322f (diff) | |
parent | 86413606615440a7951b4c62162e2bfb87aa158c (diff) | |
download | otp-0ef3320c556912b4d9f05f89ec47154eb2b5834a.tar.gz otp-0ef3320c556912b4d9f05f89ec47154eb2b5834a.tar.bz2 otp-0ef3320c556912b4d9f05f89ec47154eb2b5834a.zip |
Merge branch 'maint-r14' of super:otp into nick/ensure_ssh_dir_exists/OTP-9010
Diffstat (limited to 'lib/ic/src/ic_pragma.erl')
-rw-r--r-- | lib/ic/src/ic_pragma.erl | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/ic/src/ic_pragma.erl b/lib/ic/src/ic_pragma.erl index 9165e3b03b..45cb64c9c8 100644 --- a/lib/ic/src/ic_pragma.erl +++ b/lib/ic/src/ic_pragma.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 1998-2009. All Rights Reserved. +%% Copyright Ericsson AB 1998-2010. All Rights Reserved. %% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in @@ -60,7 +60,7 @@ pragma_reg(G,X) -> init_pragma_status(S), registerOptions(G,S), pragma_reg_all(G, S, [], X), - denote_specific_code_opts(G), %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + denote_specific_code_opts(G), case get_pragma_compilation_status(S) of true -> %% Remove ugly pragmas from form @@ -132,6 +132,7 @@ applyCodeOpt(G) -> %% This removes all pragma records from the form. %% When debugged, it can be enbodied in pragma_reg_all. +cleanup(undefined,C) -> C; cleanup([],C) -> C; cleanup([X|Xs],CSF) -> cleanup(Xs, CSF++cleanup(X)). @@ -279,7 +280,12 @@ pragma_reg(G, S, N, X) when is_record(X, union) -> pragma_reg(G, S, N, X) when is_record(X, struct) -> mk_ref(G,[get_id2(X) | N],struct_ref), mk_file_data(G,X,N,struct), - pragma_reg_all(G, S, N, X#struct.body); + case X#struct.body of + undefined -> + ok; + _ -> + pragma_reg_all(G, S, N, X#struct.body) + end; pragma_reg(G, _S, N, X) when is_record(X, attr) -> XX = #id_of{type=X}, |