This looks like a code generation issue in gcc itself. Looking at the assembly that was generated, it appears the vtbl function pointers aren't being set properly for the extension class. Please report this to the gcc bugzilla at https://gcc.gnu.org/bugzilla/, as the code generated is invalid on a linux machine as well (verified with gcc version 7.2.1 20170915 (Red Hat 7.2.1-2) (GCC)
Oh aside...the way you described it, your definition isn't on the stack. Since it sounds like a multiply defined symbol it's probably in the readonly data
Yes. We explicitly made it so your "code" would fail. Or you can look up what const storage specifiers mean. And scope rules. You aren't a programmer are you? If you are please tell me the company you work for so i can avoid all of the "commercial code" they produce (Invalid isn't valid choice so next best thing)
why are you breaking my code specifically?
characters missing from argv strings
Difference is in Windows CMD passing parameters, not a bug in the crt itself.
Not surprised considering the last entry was 9 years ago and the last update was three. I forgot this even existed.
I know that the mingw crt libraries has delay load code. I also know that binutils does have a trampoline to the delay load helper for DELAY_IMPORT_DESCRIPTORs when using dlltool. So it "should just work." Since you didn't add the "errors" you got during the link, I'm kinda stuck (e.g. post your command line and the error you got). I do want to say I remember there being a case sensitivity issue at runtime where the name of the DLL passed to load is required to match exactly what is in the rva table...