On Mon, Jun 28, 2010 at 6:15 PM, Stephan Assmus <superstippi@xxxxxx> wrote: > > On 2010-06-28 at 11:05:51 [+0200], Wim van der Meer > <wpjvandermeer@xxxxxxxxx> wrote: >> On Mon, Jun 28, 2010 at 5:48 PM, Philippe Houdoin >> <philippe.houdoin@xxxxxxxxx> wrote: >> >> Would it be acceptable to provide the non-const version only if >> >> _BEOS_R5_COMPATIBLE_ is defined? >> > >> > Make sense, yes. >> > >> >> Done. >> http://dev.haiku-os.org/changeset/37289/haiku > > What Axel proposed would be nicer, though, i.e. change the signature in the > header, without any compatibility stuff, and export the old constructor in > the source file only. There are a couple examples in the source how to do > this, for example src/kits/interface/Slider.cpp contains some binary > compatibility exports. To get the proper mangled name, I usually try to > launch an application that was linked against the old symbol and note the > missing symbol that the runtime loader spits out. > > Best regards, > -Stephan > > From a quick glance at the Slider code it is not obvious to me how that works, but if needed I look more closely into this. However, IMHO it looks like overkill since at some point R5 compatibility will be dropped anyway. Using the _BEOS_R5_COMPATIBLE_ define makes it easy to find these places later and remove unnecessary code. -- Wim van der Meer \/\///\/\