Hi; On 3 August 2016 at 19:35, John Emmas <john...@tiscali.co.uk> wrote: > On 03/08/2016 18:46, Emmanuele Bassi wrote: >> >> This is likely a MSVC 8 issue. The GOBJECT_IF_DEBUG macro expands the >> second argument to a code block, and it seems MSVC 8 has issues when >> that includes a conditional pre-processor directive. >> >> GOBJECT_IF_DEBUG hasn't changed since 2014, and the same commit >> introduced the use you see failing. >> > > That's what confused me. The last commit date for gobject.c seems to be > 25th May 2014 and yet the same code section looked like this only a > fortnight ago:- > > #ifdef G_ENABLE_DEBUG > IF_DEBUG (OBJECTS) > { > debug_objects_ht = g_hash_table_new (g_direct_hash, NULL); > #ifndef G_HAS_CONSTRUCTORS > g_atexit (debug_objects_atexit); > #endif /* G_HAS_CONSTRUCTORS */ > } > #endif /* G_ENABLE_DEBUG */ > > The above code compiles okay (or at least, it did a fortnight ago) and VC8 > is supposedly a supported compiler, so will a fix be possible?
Care to file a bug with a link to this thread? I'll try to come up with a patch for all the cases of this macro exploiting undefined behaviour. Ciao, Emmanuele. -- https://www.bassi.io [@] ebassi [@gmail.com] _______________________________________________ gtk-devel-list mailing list gtk-devel-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-devel-list