Re: [Patch, Fortran, OOP] PR 50919: Don't use vtable for NON_OVERRIDABLE TBP

2011-11-07 Thread Janus Weil
2011/11/7 Janus Weil : >> Thus, I believe it is rather difficult to run into the ABI issue in the real >> world (due to technical but also due to usage reasons), but it is possible. >> Hence, I wanted to point out that there is an ABI issue, but I also don't >> oppose the committal as it is difficu

Re: [Patch, Fortran, OOP] PR 50919: Don't use vtable for NON_OVERRIDABLE TBP

2011-11-07 Thread Janus Weil
> Thus, I believe it is rather difficult to run into the ABI issue in the real > world (due to technical but also due to usage reasons), but it is possible. > Hence, I wanted to point out that there is an ABI issue, but I also don't > oppose the committal as it is difficult to encounter the issue -

Re: [Patch, Fortran, OOP] PR 50919: Don't use vtable for NON_OVERRIDABLE TBP

2011-11-07 Thread Tobias Burnus
On 11/07/2011 09:50 AM, Janus Weil wrote: As noted by Tobias, the second part breaks the ABI ... On the other hand, one could argue that the OOP ABI is still quite young and hasn't really stabilized yet (it was broken already from 4.5 to 4.6), so we might as well break it again. I know that there

Re: [Patch, Fortran, OOP] PR 50919: Don't use vtable for NON_OVERRIDABLE TBP

2011-11-07 Thread Janne Blomqvist
On Mon, Nov 7, 2011 at 10:50, Janus Weil wrote: >>> 2) The class.c parts prevents adding the non-overridable TBP to the vtable. >>> >>> As noted by Tobias, the second part breaks the ABI, so we might >>> consider deferring it until other ABI-breaking features will be >>> implemented (cf. http://gc

Re: [Patch, Fortran, OOP] PR 50919: Don't use vtable for NON_OVERRIDABLE TBP

2011-11-07 Thread Janus Weil
Hi Paul, >> The patch actually consists of two parts: >> 1) The resolve.c part prevents the conversion to a PPC call via the >> _vptr (for functions and subroutines). > > This is obviously OK thanks for the review. >> 2) The class.c parts prevents adding the non-overridable TBP to the vtable. >

Re: [Patch, Fortran, OOP] PR 50919: Don't use vtable for NON_OVERRIDABLE TBP

2011-11-06 Thread Paul Richard Thomas
Dear Janus, On Mon, Nov 7, 2011 at 12:14 AM, Janus Weil wrote: > The patch actually consists of two parts: > 1) The resolve.c part prevents the conversion to a PPC call via the > _vptr (for functions and subroutines). This is obviously OK > 2) The class.c parts prevents adding the non-overrida

[Patch, Fortran, OOP] PR 50919: Don't use vtable for NON_OVERRIDABLE TBP

2011-11-06 Thread Janus Weil
Hi all, up to now we call all type-bound procedures in a dynamic way, i.e. through their entry in the vtable. However, for non-overridable procedures this is not necessary. Since they can not be overridden, a call to those can be resolved at compile time to an ordinary function call, without the n