Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: Re: [Wireshark-dev] Troubles with ASN generated code

From: Guy Harris <guy@xxxxxxxxxxxx>
Date: Sun, 21 May 2017 15:00:29 -0700
On May 21, 2017, at 2:54 PM, Graham Bloice <graham.bloice@xxxxxxxxxxxxx> wrote:

> It would appear not in a static initializer list. I can do it piecemeal, e.g. foo.member = &fff.

Does "piecemeal" really mean "in executable code"?

> If I try to assign &fff in an initialiser list I get an "error C2099: initializer is not a constant".

If you're initializing a static variable, that's probably not done in executable code.

The difference may be that the compiler can generate the appropriate machine code to calculate the address of fff, but can't generate the right object-file indications to the linker and run-time loader to get *them* to do it - and if the variable being initialized is const, that might not work as it might be mapped read-only.