Define jitThrowIdentityException helper and isIdentityObject non-helper - #7674
Conversation
|
Jenkins build all |
a7ehuo
left a comment
There was a problem hiding this comment.
LGTM. I just have one question. I don't see any set up for isIdentityObjectNonHelperSymbol in getUseDefAliasesBV in Aliases.cpp. Should it return &symRefTab->aliasBuilder.defaultMethodDefAliases() for isIdentityObjectNonHelperSymbol in getUseDefAliasesBV?
Yes! Thank you for catching that. |
Fixed in commit 7da639f. Once everyone has approved, I will squash the commits. |
a7ehuo
left a comment
There was a problem hiding this comment.
LGTM. Thanks for the update!
The <isIdentityObject> non-helper can be used by downstream projects as a way of distinguishing in IL whether an object is an instance of a class for which each instance has a unique identity, sometimes called an identity type, versus an instance of a class for which instances that have the same value are indistinguishable, sometimes called a value type. The <jitThrowIdentityException> helper can be used by downstream projects in IL to throw an IdentityException. It would typically be used to report that an object was expected to be an instance of a class for which each instance has a unique identity. Signed-off-by: Henry Zongaro <zongaro@ca.ibm.com>
7da639f to
8063d09
Compare
Thank you! I have squashed the commits. Jenkins build all |
|
Jenkins build all |
The
<isIdentityObject>non-helper can be used by downstream projects as a way of distinguishing in IL whether an object is an instance of a class for which each instance has a unique identity, sometimes called an identity type, versus an instance of a class for which instances that have the same value are indistinguishable, sometimes called a value type.The
<jitThrowIdentityException>helper can be used by downstream projects in IL to throw anIdentityException. It would typically be used to report that an object was expected to be an instance of a class for which each instance has a unique identity.