[fpc-devel] MinDateTime is 100 AD ?

Daniël Mantione daniel.mantione at freepascal.org
Mon Jul 2 22:58:14 CEST 2007



Op Mon, 2 Jul 2007, schreef Joost van der Sluis:

> Hi all,
> 
> In sysstrh.inc MinDateTime is defined as follows:
> 
>   { For floattodatetime }
>   MinDateTime: TDateTime = -657434.0;     { 01/01/0100 12:00:00.000 AM }
>   MaxDateTime: TDateTime =  2958465.99999;{ 12/31/9999 11:59:59.999 PM }
> 
> Why is that? Datetimes before 100AD works perfectly. Can I change it to
> 01/01/01 ? (Why does this restriction exist at all?!?)

Most probably year 2000 releated. To easy conversions from two digit days 
to four digit years, rules were introduced that years <100 need to be 
interpreted as a two digit years. I am 99% sure that these values have 
been designed with some of these rules in mind. I recommend against 
changing.

Daniël


More information about the fpc-devel mailing list