- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
When using multiple inheritance (ie. Base <- Ext1 <- Ext2) and Ext2 overrides a type-bound procedure defined in the base type, there seems to be a bug that can lead to calling the wrong type-bound procedure.
This happens when trying to call the overriden procedure in an instance of type Ext2 from a class pointer of type CLASS (Ext1). Then, the base routine is called rather then the overriden routine from Ext2.
See the attached VS2008 code for an example.
I would expect to get Ext2 three times, however, the result is Ext2, Base, Ext2.
Note that when the procedure is also overriden in Ext1, the correct result (Ext2 Ext2 Ext2)is obtained.
Best regards,
Thomas
This happens when trying to call the overriden procedure in an instance of type Ext2 from a class pointer of type CLASS (Ext1). Then, the base routine is called rather then the overriden routine from Ext2.
See the attached VS2008 code for an example.
I would expect to get Ext2 three times, however, the result is Ext2, Base, Ext2.
Note that when the procedure is also overriden in Ext1, the correct result (Ext2 Ext2 Ext2)is obtained.
Best regards,
Thomas
Link Copied
6 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This sounds familiar - I'll look at it on Monday. Thanks for the test case.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - Steve Lionel (Intel)
This sounds familiar - I'll look at it on Monday. Thanks for the test case.
Hi Steve,
did you have a chance to look into this? I really hope this problem gets fixed soon as we currently experience the problem in our code. It can be worked around by overriding the procedures at every level, but that's not really what we want.
regards,
Thomas
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thomas,
Sorry, I missed this one in catching up. I'll get to it later today.
Sorry, I missed this one in catching up. I'll get to it later today.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Escalated as issue DPD200142485. This won't make Update 4, but I have asked that it be fixed for Update 5.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This didn't make Update 5, as the initial fix created some other problems. It will be fixed for Update 6.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
And indeed it is.

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page