[YANGTOOLS-1471] Fail to process unsupported augment statement Created: 04/Dec/22 Updated: 31/Dec/22 Resolved: 31/Dec/22 |
|
| Status: | Resolved |
| Project: | yangtools |
| Component/s: | parser |
| Affects Version/s: | 10.0.1, 8.0.9, 9.0.5 |
| Fix Version/s: | 8.0.10, 9.0.6, 10.0.3 |
| Type: | Bug | Priority: | Medium |
| Reporter: | Sangwook Ha | Assignee: | Robert Varga |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
Parsing of a data model with an augment statement with if-feature sub-statement fails if
For example, parsing of the following example fails when bar-feature is not supported: module foo {
namespace "urn:foo";
prefix "foo";
feature bar-feature;
grouping baz-group {
container baz;
}
grouping bar-group {
container bar {
if-feature bar-feature;
uses baz-group;
}
}
container foo {
uses bar-group;
}
augment "/foo/bar/baz" {
if-feature bar-feature;
leaf baz-leaf {
type string;
}
}
}
Parser complains that /foo/bar/baz does not exist but it shouldn't attempt to augment the path: Caused by: org.opendaylight.yangtools.yang.parser.spi.meta.InferenceException: Augment target 'Absolute{qnames=[(urn:foo)foo, bar, baz]}' not found [at /volumes/OpenDaylight/yangtools/parser/yang-parser-rfc7950/target/test-classes/bugs/YT1471/augment-if-feature-nested-grouping/foo.yang:22:3]
at org.opendaylight.yangtools.yang.parser.rfc7950@10.0.2-SNAPSHOT/org.opendaylight.yangtools.yang.parser.rfc7950.stmt.augment.AugmentInferenceAction.prerequisiteFailed(AugmentInferenceAction.java:109)
at org.opendaylight.yangtools.yang.parser.reactor@10.0.2-SNAPSHOT/org.opendaylight.yangtools.yang.parser.stmt.reactor.ModifierImpl.failModifier(ModifierImpl.java:86)
at org.opendaylight.yangtools.yang.parser.reactor@10.0.2-SNAPSHOT/org.opendaylight.yangtools.yang.parser.stmt.reactor.SourceSpecificContext.failModifiers(SourceSpecificContext.java:375)
at org.opendaylight.yangtools.yang.parser.reactor@10.0.2-SNAPSHOT/org.opendaylight.yangtools.yang.parser.stmt.reactor.BuildGlobalContext.addSourceExceptions(BuildGlobalContext.java:307)
... 51 more
|