CalendarRegressionTest::getAssociatedDate(UDate d, UErrorCode& status)
{
    GregorianCalendar *cal = new GregorianCalendar(status);
    cal->setTime(d,status);
    //cal.add(field, amount); //<-- PROBLEM SEEN WITH field = DATE,MONTH
    // cal.getTime();  // <--- REMOVE THIS TO SEE BUG
    for (;;) {
        int32_t wd = cal->get(UCAL_DAY_OF_WEEK, status);
        if (wd == UCAL_SATURDAY || wd == UCAL_SUNDAY) {
            cal->add(UCAL_DATE, 1, status);
            // cal.getTime();
        }
        else
            break;
    }

    UDate dd = cal->getTime(status);
    delete cal;
    return dd;
}
CalendarRegressionTest::getAssociatedDate(UDate d, UErrorCode& status)
{
    GregorianCalendar *cal = new GregorianCalendar(status);
    cal->setTime(d,status);
     
     
    for (;;) {
        int32_t wd = cal->get(UCAL_DAY_OF_WEEK, status);
        if (wd == UCAL_SATURDAY || wd == UCAL_SUNDAY) {
            cal->add(UCAL_DATE, 1, status);
             
        }
        else
            break;
    }

    UDate dd = cal->getTime(status);
    delete cal;
    return dd;
}