mirror of https://gerrit.osmocom.org/asn1c
91 lines
1.4 KiB
Groff
91 lines
1.4 KiB
Groff
|
|
-- OK: Everything is fine
|
|
|
|
-- iso.org.dod.internet.private.enterprise (1.3.6.1.4.1)
|
|
-- .spelio.software.asn1c.test (9363.1.5.1)
|
|
-- .92
|
|
|
|
ModuleCircularReferences
|
|
{ iso org(3) dod(6) internet (1) private(4) enterprise(1)
|
|
spelio(9363) software(1) asn1c(5) test(1) 92 }
|
|
DEFINITIONS AUTOMATIC TAGS ::=
|
|
BEGIN
|
|
|
|
Everything ::= SEQUENCE {
|
|
ch1 Choice1,
|
|
ch2 Choice2,
|
|
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.
|
|
Choice1 ::= CHOICE {
|
|
something Everything,
|
|
...,
|
|
some2 Everything
|
|
}
|
|
|
|
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,
|
|
seq Sequence,
|
|
set2 Set OPTIONAL,
|
|
...,
|
|
set3 Set
|
|
}
|
|
|
|
Sequence ::= SEQUENCE {
|
|
a INTEGER,
|
|
seq Sequence OPTIONAL,
|
|
...,
|
|
b INTEGER,
|
|
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
|