[Bug java/18083] New: Calendar returns incorrect values for DAY_OF_YEAR and DAY_OF_WEEK after calling add().

mnefedov at rogers dot com gcc-bugzilla@gcc.gnu.org
Wed Oct 20 15:52:00 GMT 2004


Calendar returns incorrect values for DAY_OF_YEAR and DAY_OF_WEEK after 
calling add().

Here is an example code to test it:

import java.util.Calendar;

public class CalendarTest {
	public static void main( String [] args ) {
		boolean fail = false;
		Calendar c = Calendar.getInstance();

		c.set( 2004, 0, 1 );
		fail |= print( c, 1, 5 );

		c.add( Calendar.MONTH, 1 );
		fail |= print( c, 32, 1 );

		c.add( Calendar.MONTH, 1 );
		fail |= print( c, 61, 2 );

		c.add( Calendar.MONTH, 1 );
		fail |= print( c, 92, 5 );

		System.exit( fail ? 1 : 0 );

	}
	static boolean print( Calendar c, int doy, int dow ) {
		int y = c.get( Calendar.YEAR ), 
		    m = c.get( Calendar.MONTH ), 
		    d = c.get( Calendar.DAY_OF_MONTH ), 
		    actdoy = c.get( Calendar.DAY_OF_YEAR ), 
		    actdow = c.get( Calendar.DAY_OF_WEEK );

		if( actdoy != doy || actdow != dow ) {
			System.out.println( "FAIL: y="+y+", m="+m+", d="+d+", 
doy="+doy+", actdoy="+actdoy+", dow="+dow+", actdow="+actdow );
			return true;
		} else {
			System.out.println( "PASS: y="+y+", m="+m+", d="+d+", 
doy="+doy+", dow="+dow);
			return false;
		}
	}
}

-- 
           Summary: Calendar returns incorrect values for DAY_OF_YEAR and
                    DAY_OF_WEEK after calling add().
           Product: gcc
           Version: 3.4.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: java
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: mnefedov at rogers dot com
                CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu
                    dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18083



More information about the Java-prs mailing list