Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cross-project-issues-dev] Possible source incompatibility in Indigo with the new ICU4J 4.4.2

Indigo (Eclipse SDK 3.7.0) will include a newer version of ICU4U, 4.4.2, to be included in Indigo M6 (it's already available in the Eclipse SDK I-builds).  This move includes bug fixes, but also ICU4Js BREE moves to J2SE-1.5.  This will ease the ability of applications to swap in more current versions of ICU4J: 4.6.x and 4.8.0 (due out in May) are based on J2SE-1.5.

WTP found a source code incompatiblity in moving up to ICU4J 4.4.2.  In 4.2.x it was possible to write code like:
Comparator<String> STRING_COMPARATOR = Collator.getInstance();

This worked because ICU4J 4.2.x was still J2SE-1.4 (no generics) and the above code simply produced a warning.  Now the Collator is defined the same as the JCL, as a Comparator<Object>, the above code will generate a compile error.  See for specifics.

This should not effect binary compatibility (bundles already compiled are fine).

Paul Webster
Hi floor.  Make me a sammich! - GIR

Back to the top