aboutsummaryrefslogtreecommitdiffstats
path: root/lib/asn1/src/asn1ct_parser2.erl
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2013-09-27 10:07:20 +0200
committerBjörn Gustavsson <[email protected]>2013-09-27 10:07:20 +0200
commit5df3c4454fd5f302317bed7f5f83f20f7e5d9580 (patch)
tree2bddc4cd375b0f3867e8646c814598c34b18f7a8 /lib/asn1/src/asn1ct_parser2.erl
parent50e91bde3403c788bb1cabe644534f351d6dc1c1 (diff)
parente389b27d6c6971cee5be5a9b45703d9af6b6cb39 (diff)
downloadotp-5df3c4454fd5f302317bed7f5f83f20f7e5d9580.tar.gz
otp-5df3c4454fd5f302317bed7f5f83f20f7e5d9580.tar.bz2
otp-5df3c4454fd5f302317bed7f5f83f20f7e5d9580.zip
Merge branch 'bjorn/asn1/clean-up-tests' into maint
* bjorn/asn1/clean-up-tests: (24 commits) No longer compile the X420 specs for plain BER Combine the testSeqIndefinite/1 and testSetIndefinite/1 test cases Remove asn1_wrapper Eliminate the use of asn1_wrapper Simplify tests of CHOICE with OPTIONAL asn1_test_lib: Add roundtrip functions and use them everywhere Makefile: Release Emakefile to ensure warnings are treated as errors Don't allow unused exported functions in test case helpers Move out specific tests from asn1_test_lib testMegaco: Remove unused exported function msg11/0 ASN.1 tests: Don't export functions that are only locally called Remove unused pem_performance.erl file asn1_SUITE: Reinstate test of sub-constraint ASN.1 tests: Remove unused choice_extension.erl Remove unused compile() functions asn1_test_lib: Remove unnecessary loading of a compiled ASN.1 spec Slightly clean up testX420 asn1_SUITE: Combine most tests that use External.asn1 asn1ct_gen: Clean up process dictionary after generating asn1ct_parser2: Clean the process dictionary after parsing ...
Diffstat (limited to 'lib/asn1/src/asn1ct_parser2.erl')
-rw-r--r--lib/asn1/src/asn1ct_parser2.erl8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/asn1/src/asn1ct_parser2.erl b/lib/asn1/src/asn1ct_parser2.erl
index 1abccc8626..283616b157 100644
--- a/lib/asn1/src/asn1ct_parser2.erl
+++ b/lib/asn1/src/asn1ct_parser2.erl
@@ -38,6 +38,7 @@ parse(Tokens) ->
{error,{Reason,hd(Tokens)}};
{ModuleDefinition,Rest1} ->
{Types,Rest2} = parse_AssignmentList(Rest1),
+ clean_process_dictionary(),
case Rest2 of
[{'END',_}|_Rest3] ->
{ok,ModuleDefinition#module{typeorval = Types}};
@@ -48,6 +49,13 @@ parse(Tokens) ->
end
end.
+clean_process_dictionary() ->
+ Mod = erase(asn1_module),
+ _ = erase({Mod,imports}),
+ _ = erase(tagdefault),
+ _ = erase(extensiondefault),
+ ok.
+
parse_ModuleDefinition([{typereference,L1,ModuleIdentifier}|Rest0]) ->
put(asn1_module,ModuleIdentifier),
{_DefinitiveIdentifier,Rest02} =