Hi,

clucene's API makes heavy use of the type float_t. On s390, float_t has
historically been defined as double for no good reason. For getting rid
of performance overhead in some cases and contradictions with the C
standard in others, we discuss plans to clean up that definition -
float_t should become float on s390.

As a result of that change, all these places in clucene's ABI would flip
from double to float. Existing shared libs of clucene would become
incompatible with binaries built with new versions of glibc/gcc and vice
versa -- potentially causing very bad update experiences.

To avoid that ABI breakage, I propose to stabilize the use of float_t to
always use double on s390x. Please review my patch posted in the ticket
https://sourceforge.net/p/clucene/bugs/233/
where I also posted more background on float_t and its status quo on s390.

What do you think of this approach? What alternative may I have missed?

(If you are also subscribed to the tickets and received this twice,
please excuse the duplication.)

Regards,
Marius
-- 
Marius Hillenbrand
Linux on Z development
IBM Deutschland Research & Development GmbH
Vors. des Aufsichtsrats: Gregor Pillen / Geschäftsführung: Dirk Wittkopp
Sitz der Gesellschaft: Böblingen / Registergericht: Amtsgericht
Stuttgart, HRB 243294


_______________________________________________
CLucene-developers mailing list
CLucene-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/clucene-developers

Reply via email to