I tried recompiling asc with libsdl1.2-compat-dev instead of
libsdl1.2-dev, in preparation for having src:sdl12-compat take over the
libsdl1.2-dev package name.
I found that asc failed to build from source in this situation:
This is because asc bundles a copy of a SDL 1.2 C++ binding, SDLmm, which
includes an unnecessary accessor for a private member of SDL_surface.
The member was declared as `struct private_hwdata *hwdata` in classic
SDL 1.2, but sdl12-compat simplifies this to `void *hwdata`.
This struct member is for internal use by SDL and the data structure
that it points to has no public definition, so there is no legitimate
reason for third-party code to be accessing it. I think the obvious
solution is to delete the accessor, instead of silencing the compiler
warning with a cast.
I reported this to https://github.com/libsdl-org/sdl12-compat/issues/299
but it's not clear to me whether it *should* be worked around in
sdl12-compat. If it isn't, then this bug is likely to become RC when
we are ready to make src:sdl12-compat take over libsdl1.2-dev.
Please consider the attached patch (it will need a trivial edit to
reference the bug number).
Thanks,
smcv