feature-cross-feature-type

Available in: KerML, SysML

This checks that cross features have the same types as the crossing features.

Specification

The cross_feature of a Feature must have the same types as the Feature.

Example

attribute def A;
attribute def B;
attribute def C {
    end b { c : A; }
    end c : B => b.c; // error
}

Instead, use the same type for both the crossing, and the crossed features:

attribute def A;
attribute def B;
attribute def C {
    end b { c : A; }
    end c : A => b.c; // ok
}