[Development] QProperty and library coding guide

Thiago Macieira thiago.macieira at intel.com
Mon Jul 20 18:06:01 CEST 2020

On Monday, 20 July 2020 08:40:06 PDT Oswald Buddenhagen wrote:
> On Mon, Jul 20, 2020 at 07:32:41AM -0700, Thiago Macieira wrote:
> >I am not going to accept a null-pointer dereference in there. The
> >static_cast<T *>(nullptr)-> must go.
> this this construct is actually UB is disputed on wikipedia (in the
> offsetof article).

There's no dispute. It's a null-pointer dereference, so it's UB.

Whether offsetof() uses that technique to provide a defined behaviour or not 
is irrelevant. offsetof() is a macro provided by the compiler, so the compiler 
maintainers know what code their compiler will generate.

> anyway, this can be trivially bypassed by just using an arbitrary
> address and subtracting the offset. or using offsetof, indeed. in any
> case it's 3 minutes of work. ;)

Someone please submit it then.

Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel DPG Cloud Engineering

More information about the Development mailing list