The current implementation of java.text.DecimalFormat is not completely spec compliant. For instance it mishandles exponential notation in cases like "##0.#E0" (the "scientific notation" case). We should go through the DecimalFormat spec, write mauve tests, and then bring the DecimalFormat implementation up to spec. Release: current cvs
Tom, in current mauve cvs, there are tests in the following directory: gnu/testlet/java/text/ DecimalFormat . Do they correspond to what you're speaking of in this bug report? Thanks, Dara
Trust Tom on this one.
The following throws an exception coz it doesn't like the '%' But, of course, it is valid import java.text.*; class fail { public static void main(String[] args) { DecimalFormat df = new DecimalFormat("##0.00%"); } }
Forgot to add: I'm using the RedHat current rawhide version of gcc 3.3.1 (not the latest CVS) Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.3.1/specs Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.3.1/libgcj.spec rename spec lib to liborig Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --host=i386-redhat-linux Thread model: posix gcc version 3.3.1 20030811 (Red Hat Linux 3.3.1-1)
Fixed for 3.4 (do not know what was the patch which fixed this).