aboutsummaryrefslogtreecommitdiffstats
path: root/tests/92-circular-loops-OK.asn1
diff options
context:
space:
mode:
authorLev Walkin <vlm@lionet.info>2005-08-18 13:38:19 +0000
committerLev Walkin <vlm@lionet.info>2005-08-18 13:38:19 +0000
commitb85a8135dae955c09b23197f5497b8ff911d083d (patch)
treeafc3f841706d6e89951802d5d00b2442f2163f84 /tests/92-circular-loops-OK.asn1
parente44ea0bdd9f5dd291c1fa3b7b6dbcedddd6c51df (diff)
automatic dependency tracking
Diffstat (limited to 'tests/92-circular-loops-OK.asn1')
-rw-r--r--tests/92-circular-loops-OK.asn143
1 files changed, 42 insertions, 1 deletions
diff --git a/tests/92-circular-loops-OK.asn1 b/tests/92-circular-loops-OK.asn1
index 956e2ac1..e57312de 100644
--- a/tests/92-circular-loops-OK.asn1
+++ b/tests/92-circular-loops-OK.asn1
@@ -14,7 +14,14 @@ BEGIN
Everything ::= SEQUENCE {
ch1 Choice1,
ch2 Choice2,
- set Set
+ ch3 Choice3,
+ set Set,
+ a Alpha,
+ b Beta,
+ g Gamma,
+ ot OneTwo,
+ tt TwoThree,
+ to ThreeOne
}
-- This type refers to the type directly containing itself.
@@ -25,10 +32,19 @@ BEGIN
}
Choice2 ::= CHOICE {
+ typeref TypeRef,
...,
some3 Everything
}
+ Choice3 ::= CHOICE {
+ a SEQUENCE {
+ aa Everything
+ },
+ b Everything,
+ c SEQUENCE OF Choice3
+ }
+
Set ::= SET OF SEQUENCE {
int INTEGER,
set Set,
@@ -46,4 +62,29 @@ BEGIN
set Set OPTIONAL
}
+ TypeRef ::= Sequence
+
+ Alpha ::= SEQUENCE {
+ a Beta,
+ b SEQUENCE {
+ b Beta OPTIONAL
+ }
+ }
+
+ Beta ::= SEQUENCE {
+ b Alpha OPTIONAL,
+ g Gamma OPTIONAL
+ }
+
+ Gamma ::= SEQUENCE {
+ o TwoThree,
+ a Alpha, -- expected inline
+ b Beta -- expected inline
+ }
+
+ -- This is a true superdependency.
+ OneTwo ::= SET { m12 TwoThree }
+ TwoThree ::= SET { m23 ThreeOne }
+ ThreeOne ::= SET { m31 OneTwo, g Gamma }
+
END