[Bug c++/13683] [3.3/3.4 Regression] bogus warning about passing non-PODs through ellipsis
gdr at integrable-solutions dot net
gcc-bugzilla@gcc.gnu.org
Tue Jan 20 15:03:00 GMT 2004
------- Additional Comments From gdr at integrable-solutions dot net 2004-01-20 15:03 -------
Subject: Re: [3.3/3.4 Regression] bogus warning about passing non-PODs through ellipsis
"giovannibajo at libero dot it" <gcc-bugzilla@gcc.gnu.org> writes:
| ------- Additional Comments From giovannibajo at libero dot it 2004-01-20 14:11 -------
| Subject: Re: [3.3/3.4 Regression] bogus warning about passing non-PODs through ellipsis
|
| gdr at integrable-solutions dot net wrote:
|
| >> Passing a non-POD object through ellipsis is undefined behaviour
| >> *if* the call is done. In our situation, there is absolutely no call being
| >> performed (nor code generated where we abort), so there is no
| >> undefined behaviour.
|
| > I can understand your request in the case of sizeof but I do not
| > understand it as rephrased as above. How precisely do you define call
| > being performed or code generated?
|
| I was thinking of something along the lines of "potentially evaluated",
| [basic.def.odr]/2.
Oh yeah, go some paragraphs down, and you'll see that thw whole thing
is a little bit confused. And remember, most people want intelligible
diagnostics and are not well versed in "standardese" (i.e. common
words with slightly different meaning).
| Anyway, if we both agree on my request for the sizeof()
| case, I'm happy with it, I'll let you pick my explanation of it which is more
| correct, or please do provide your own reasoning for this.
As I said earlier I understand the request for sizeof() as it is an
*integral constant expression* whose value does not involve a runtime
semantics and is well defined.
-- Gaby
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13683
More information about the Gcc-bugs
mailing list