[sv-ec] RE: Mantis 1356 rev 16

From: Bresticker, Shalom <shalom.bresticker@intel.com>
Date: Sun Nov 20 2011 - 04:27:45 PST

Hi.

Brandon,

You wrote me (in the semi-private correspondence between us):

Is this not explicit enough (top of page 3)?

A virtual class shall define or inherit a pure virtual method prototype or virtual method implementation for each pure virtual method prototype in each implemented interface class. The keyword virtual shall be used unless the virtual method is inherited.

I believe that it is clear that if you are not inheriting a method, then you must provide a pure virtual method prototype or a pure virtual method definition; and the virtual keyword must be used (i.e., the virtual keyword from the interface class is not implicitly carried over to the class that implements it).

I don't agree. The sentence preceding the last sentence starts, "A virtual class shall ...". The simple interpretation of the last sentence is that it is still talking about virtual classes. Thus, it does not say anything about non-virtual classes.

Editorial:

On page 1:

This creates a requirement for the non-interface class to provide implementations for a set of methods which shall satisfy the requirements of a virtual method override (see 8.20).

Change "which" to "that".

Regards,
Shalom

From: owner-sv-ec@eda.org [mailto:owner-sv-ec@eda.org] On Behalf Of Tipp, Brandon P
Sent: Friday, November 18, 2011 8:45 PM
To: sv-ec@eda.org
Subject: [sv-ec] Mantis 1356 rev 16

All,

Please review 1356 rev16 for Monday's meeting. The docx showing rev15->rev16 changes is attached. The following (significant) changes were made since rev14 was approved by the SV-EC...

Rev14->rev15

* Various formatting and typo changes

* Deleted this line "This interface implementation allows classes to support common behaviors without sharing implementations." from the first paragraph (feedback was that it is both confusing and redundant)
Rev15->rev16

* Re-numbered references due to mantis 3001 which inserted 8.8

* Various formatting updates

* Re-worded a lot of the text under Name conflicts and resolution and the sub-sections

* Major changes to the wording in the "Diamond inheritance" section. Re-named it "Diamond problem" since I received feedback to try to remove the last references to "inheritance" w.r.t. interface class implementations.

* Added a paragraph to the end of 8.56.9 to clarify that pre_randomize() and post_randomize() work with interface class handles.

The following feedback items are still open with Shalom:

* Shalom had feedback that it is not clear "whether an implemented non-inherited method needs to be declared virtual. Assuming that to be true, it is probably good to say so explicitly." I replied that is already explicitly stated by the first paragraph on page 3. I haven't received a reply to that yet.

* Shalom is still reviewing the updated text in the "Diamond problem" section.

-Brandon

--
This message has been scanned for viruses and
dangerous content by MailScanner<http://www.mailscanner.info/>, 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 Sun Nov 20 04:30:22 2011

This archive was generated by hypermail 2.1.8 : Sun Nov 20 2011 - 04:30:43 PST