[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-05-16 Thread iains at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #20 from Iain Sandoe --- leaving open, I think this might also be needed on 10.x

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-05-16 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #19 from CVS Commits --- The releases/gcc-11 branch has been updated by Iain D Sandoe : https://gcc.gnu.org/g:72f004746d87f01e5e3872af3214e3fa1b48dfa8 commit r11-10788-g72f004746d87f01e5e3872af3214e3fa1b48dfa8 Author: Iain Sandoe

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-04-30 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #18 from CVS Commits --- The releases/gcc-12 branch has been updated by Iain D Sandoe : https://gcc.gnu.org/g:b7e75cdb218f25708b8b1aa3f4b138d88187491f commit r12-9501-gb7e75cdb218f25708b8b1aa3f4b138d88187491f Author: Iain Sandoe

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-03-31 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #17 from CVS Commits --- The master branch has been updated by Iain D Sandoe : https://gcc.gnu.org/g:fc4cde2e6aa4d6ebdf7f70b7b4359fb59a1915ae commit r13-6964-gfc4cde2e6aa4d6ebdf7f70b7b4359fb59a1915ae Author: Iain Sandoe Date:

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-03-07 Thread iains at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #16 from Iain Sandoe --- (In reply to Jan Hubicka from comment #15) > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 > > > > --- Comment #14 from Iain Sandoe --- > > (In reply to Jan Hubicka from comment #13) > > > > So ..

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-03-07 Thread hubicka at ucw dot cz via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #15 from Jan Hubicka --- > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 > > --- Comment #14 from Iain Sandoe --- > (In reply to Jan Hubicka from comment #13) > > > So .. for promotion of target expression temporaries to

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-03-07 Thread iains at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #14 from Iain Sandoe --- (In reply to Jan Hubicka from comment #13) > > So .. for promotion of target expression temporaries to frame vars, one of: > > - a) we need to find a different way to name them > I think we can just count

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-03-07 Thread hubicka at ucw dot cz via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #13 from Jan Hubicka --- > So .. for promotion of target expression temporaries to frame vars, one of: > - a) we need to find a different way to name them I think we can just count number of fields within a given frame type? Honza

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-03-03 Thread iains at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 Iain Sandoe changed: What|Removed |Added Ever confirmed|0 |1 Status|UNCONFIRMED

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-03-03 Thread iains at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #11 from Iain Sandoe --- (In reply to Iain Sandoe from comment #10) > Hmm... maybe I am being too hasty here. > > If the coroutine has a definition in a header, then the coroutine frame type > _should_ be the same for each instance

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-03-03 Thread iains at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #10 from Iain Sandoe --- Hmm... maybe I am being too hasty here. If the coroutine has a definition in a header, then the coroutine frame type _should_ be the same for each instance of it. So maybe this is actually reporting a

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-03-03 Thread iains at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #9 from Iain Sandoe --- (In reply to Jan Hubicka from comment #8) > > > > the synthesised functions (actor, destroy) are intended to be TU-local. > > the ramp function is what remains of the user's original function after the > >

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-03-03 Thread hubicka at ucw dot cz via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #8 from Jan Hubicka --- > > the synthesised functions (actor, destroy) are intended to be TU-local. > the ramp function is what remains of the user's original function after the > coroutine body is outlined - so that has the

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-03-03 Thread iains at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #7 from Iain Sandoe --- (In reply to Jan Hubicka from comment #6) from me there has been no progress on anything co-routines related, for a while - I of not have any resources to work on it. > I am not really expert on coroutines.

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-03-03 Thread hubicka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #6 from Jan Hubicka --- I am not really expert on coroutines. But this seems to be a type (not a declaration we globalize during LTO) generated internally by the front-end. The name __D.9984.3.4 looks like it has a global counter

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2023-03-03 Thread john at drouhard dot dev via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #5 from John Drouhard --- Has there been any progress toward resolution for this? We've been trying to use coroutines in our project but we require LTO for performance reasons, so this is holding us back.

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2021-06-18 Thread iains at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #4 from Iain Sandoe --- (In reply to Nils Gladitz from comment #3) > Thanks for looking into this! just speculation so far ... > Any idea what the potential implications are? Not yet. > I assume I can't just ignore the warning

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2021-06-18 Thread nilsgladitz at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #3 from Nils Gladitz --- Thanks for looking into this! Any idea what the potential implications are? I assume I can't just ignore the warning as this will likely break code? When I turn off LTO the diagnostic will go away but the

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2021-06-18 Thread iains at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 --- Comment #2 from Iain Sandoe --- hmm. __D.9984.3.4 means that this is a frame variable that is a 'promoted' temporary (promoted because its lifetime had to be extended across a suspend point by copying it into the frame). So, I am

[Bug c++/101118] coroutines: unexpected ODR warning for coroutine frame type in LTO builds

2021-06-18 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 Richard Biener changed: What|Removed |Added Keywords||diagnostic, lto CC|