Bug 118330

Summary: /bin/date thinks December has 30 days
Product: Base System Reporter: wayne <wayne>
Component: binAssignee: freebsd-bugs (Nobody) <bugs>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: 6.2-RELEASE   
Hardware: Any   
OS: Any   

Description wayne 2007-11-29 18:10:00 UTC
/bin/date does not believe that December has 31 days

Fix: 

A quick glance at the code shows that the constant table lists 31 days for December so it's going to take a bit more effort than that.
How-To-Repeat: December 30 works:
% date -v30d -v12m -v7y
Sun Dec 30 13:04:56 EST 2007

Dec 31 does not:
% date -v31d -v12m -v7y  
31d: Cannot apply date adjustment
usage: date [-jnu] [-d dst] [-r seconds] [-t west] [-v[+|-]val[ymwdHMS]] ... 
            [-f fmt date | [[[[[cc]yy]mm]dd]HH]MM[.ss]] [+format]
Comment 1 Garrett Wollman 2007-11-29 18:12:46 UTC
In article <200711291807.lATI71aj028620@www.freebsd.org> you write:

>Dec 31 does not:
>% date -v31d -v12m -v7y  
>31d: Cannot apply date adjustment

Wrong argument order.  This fails because *November* has only 30 days.

$ date -v7y -v12m -v31d
Mon Dec 31 13:12:10 EST 2007

-GAWollman
Comment 2 Mark Linimon freebsd_committer freebsd_triage 2007-11-29 20:24:58 UTC
State Changed
From-To: open->closed

Operation is dependent on parameter order.