This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: c/3190 Re: warning: `%y' yields only last 2 digits of year
- From: "Joseph S. Myers" <jsm28 at cam dot ac dot uk>
- To: Robert Dewar <dewar at gnat dot com>
- Cc: <clock at atrey dot karlin dot mff dot cuni dot cz>, <gcc-gnats at gcc dot gnu dot org>, <gcc at gcc dot gnu dot org>, <geoffk at geoffk dot org>
- Date: Tue, 12 Mar 2002 22:54:51 +0000 (GMT)
- Subject: Re: c/3190 Re: warning: `%y' yields only last 2 digits of year
On Tue, 12 Mar 2002, Robert Dewar wrote:
> But there are lots of forms which *require* the year to be output as two
> digits, and there is nothing wrong at all with doing so. To think otherwise
> is to have taken some totally bizarre viewpoint of what Y2K was all about.
There are probably many bad programs that concatenate "19" with the result
of %y. Cases where a 2-digit year is externally specified, and you *know*
that this will work properly across the Y2.1K transition[1], would seem
quite specialised.
> It's perfectly fine for example to say 01/05/02 on a check, and requiring
> 2002 is a waste of ink. I don't see any *language* style issue and that
That date has six possible interpretations (the order of preference
between them being culturally dependent). Unless you have some
arrangement as to the interpretation of such dates with anyone who might
read them, they hardly seem like a good idea to write - certainly, when
such dates appear on web pages, they generally are confusing and it's a
matter of second-guessing the intent of the writer. I'd always use
yyyy-mm-dd (ISO 8601 format) in such a case, given a free-format date
field.
> is all that style warnings should be about. This is about *what* you
> are programming, whereas style options should be about *how* you are
> programming.
It's about how you are using a particular ISO C standard interface.
> An anology would be if the compiler watched for the string "Mrs." in output
> and printed a warning saying "inappropriate term, consider using Ms instead".
Given some past linux-kernel discussions, I suspect a few people might
find useful a warning option that checked for some substrings in the
arguments to certain functions and warned about them.
--
Joseph S. Myers
jsm28@cam.ac.uk