>I agree, as long as each element of the unpacked operator allows those >operators. Technically, case equality is not allowed for reals, and probably for any other non-vector types. However, it makes perfect sense to allow it for them, with the same meaning as logical equality. In fact, it makes more sense to allow case equality than logical equality. A comparison between two chandles is a comparison for an exact match, with no possibility of an X result. That matches the definition of a case equality better than the definition of logical equality. I think the only reason the logical equality operator was used for comparing reals instead of the case equality operator, is that it is shorter to type. The more concise operator was used for the most common compare on each type. I think it makes much more sense to do case equality on unpacked structs than logical equality. There are also issues of efficiency. For a mixed 2/4-state unpacked struct, case equality is a simple memcmp of the whole object (assuming all padding bits have a standard value). On the other hand, logical equality requires a much more complex operation of decomposing the object into its components and comparing them independently. This is more expensive. It also isn't consistent with the idea that this is an operation on a monolithic object, as a whole. Steven Sharp sharp@cadence.comReceived on Mon Feb 28 15:34:37 2005
This archive was generated by hypermail 2.1.8 : Mon Feb 28 2005 - 15:34:53 PST