I would say that you need to normalize only if the types of then- and else- expressions do not match. If the types are matching (or "same"), it would be more useful to let the conditional operator return this type, rather than to artificially normalize it. This is especially true for non-integral types. Aside conditional operators and identifiers, mentioned in this mail thread, other expressions that may (should be defined as able to) have a type other than a simple scalar or a "normalized" one-dimensional vector are part selects, cast operators, assignment operators, assignment patterns and maybe others. --Yulik. -----Original Message----- From: owner-sv-bc@server.eda.org [mailto:owner-sv-bc@server.eda.org] On Behalf Of Steven Sharp Sent: Tuesday, October 16, 2007 2:17 AM To: sharp@cadence.com; Greg.Jaxon@synopsys.com Cc: sv-bc@server.eda-stds.org; gordonv@model.com Subject: Re: [sv-bc] confusion in determining the type of an self determined binary expression during evalution of type operator >There are lots of hard cases hereabouts: e.g., c ? a : a[4:5] Since you have to apply the LRM rules to determine the width of the resulting value of ?:, and convert both operands to that width, it seems clear to me that you have to normalize. The result of (1 ? a : b) may not have the type of a. Steven Sharp sharp@cadence.com -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. --------------------------------------------------------------------- Intel Israel (74) Limited This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies. -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Tue Oct 16 02:49:37 2007
This archive was generated by hypermail 2.1.8 : Tue Oct 16 2007 - 02:50:09 PDT