[ub] Type punning to avoid copying
Jeffrey Yasskin
jyasskin at google.com
Fri Jul 26 18:14:08 CEST 2013
On Fri, Jul 26, 2013 at 9:10 AM, Gabriel Dos Reis <gdr at cs.tamu.edu> wrote:
> Jeffrey Yasskin <jyasskin at google.com> writes:
>
> | On Fri, Jul 26, 2013 at 8:30 AM, Gabriel Dos Reis <gdr at cs.tamu.edu> wrote:
> | > Ion Gaztañaga <igaztanaga at gmail.com> writes:
> | >
> | > [...]
> | >
> | > | ¿How can we tell the compiler that a memory buffer is really a different
> | > | type?
> | >
> | > Invoke a constructor to turn the raw memory into an object of the
> | > desired type.
> |
> | Can you point to the wording that explains the behavior in that case?
>
> I am not sure I understand your request. Ion wants to state a region of
> storage is of a given type. The behavior after the contructor ran is
> what you get after running a constructor -- see section 12.1.
Yeah, sorry. I mean, if I write:
float f = 3.2f;
int* i = new(&f) int;
use(*i);
where does it say what the value of '*i' is? I'm expecting
implementation-defined, but I don't know exactly where to look.
Thanks,
Jeffrey
More information about the ub
mailing list