org.jacorb.orb.TypeCode.originalType(discriminator_type);
if (disc_tc == null ||
!(disc_tc.kind().value() == TCKind._tk_short ||
disc_tc.kind().value() == TCKind._tk_long ||
disc_tc.kind().value() == TCKind._tk_longlong ||
disc_tc.kind().value() == TCKind._tk_ushort ||
disc_tc.kind().value() == TCKind._tk_ulong ||
disc_tc.kind().value() == TCKind._tk_ulonglong ||
disc_tc.kind().value() == TCKind._tk_char ||
disc_tc.kind().value() == TCKind._tk_boolean ||