Commit 274a93db authored by Miklos Magyari's avatar Miklos Magyari
Browse files

OOP: fixed type reference for classes


Signed-off-by: Miklos Magyari's avatarMiklos Magyari <miklos.magyari@sigmatechnology.se>
parent f018ae26
......@@ -65,6 +65,7 @@ import org.eclipse.titan.designer.AST.TTCN3.types.Array_Type;
import org.eclipse.titan.designer.AST.TTCN3.types.BitString_Type;
import org.eclipse.titan.designer.AST.TTCN3.types.CharString_Type;
import org.eclipse.titan.designer.AST.TTCN3.types.CharString_Type.CharCoding;
import org.eclipse.titan.designer.AST.TTCN3.types.Class_Type;
import org.eclipse.titan.designer.AST.TTCN3.types.CompField;
import org.eclipse.titan.designer.AST.TTCN3.types.Function_Type;
import org.eclipse.titan.designer.AST.TTCN3.types.OctetString_Type;
......@@ -1820,7 +1821,16 @@ public abstract class Type extends Governor implements IType, IIncrementallyUpda
if (governor == null) {
final IType type = assignment.getType(timestamp);
if (type != null) {
governor = type.getFieldType(timestamp, reference, 1, expectedValue, referenceChain, false);
if (type instanceof Referenced_Type) {
Referenced_Type rt = (Referenced_Type)type;
IType refdtype = rt.getTypeRefd(timestamp, referenceChain);
if (refdtype instanceof Class_Type) {
governor = ((Class_Type)refdtype).getFieldType(timestamp, reference, 1, expectedValue, referenceChain, false);
}
}
if (governor == null) {
governor = type.getFieldType(timestamp, reference, 1, expectedValue, referenceChain, false);
}
}
}
if (governor == null) {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment