protected override CType __GetCType(IIdentifierTypeResolver Resolver) { var TrueType = TrueExpression.GetCachedCType(Resolver); var FalseType = FalseExpression.GetCachedCType(Resolver); if (TrueType == FalseType) { return(TrueType); } else { var TrueSize = TrueType.GetSize(null); var FalseSize = FalseType.GetSize(null); if (TrueSize > FalseSize) { return(TrueType); } if (FalseSize > TrueSize) { return(FalseType); } throw (new NotImplementedException()); } }