19-Jan-2038, 03:14:07 AM GMT 2 147 483 647 
By the year 2038,
the time_t representation for the current time will be over 2 140 000 000. And that's the problem. A modern 32-bit computer stores a "signed integer" data type, such as time_t, in 32 bits. The first of these bits is used for the positive/negative sign of the integer, while the remaining 31 bits are used to store the number itself. The highest number these 31 data bits can store works out to exactly 2 147 483 647. A time_t value of this exact number, 2 147483 647, represents January 19, 2038, at 7 seconds past 3:14 AM Greenwich Mean Time. So, at 3:14:07 AM GMT on that fateful day, every time_t used in a
32-bit C or C++ program will reach its upper limit.
When a signed integer reaches its maximum value and then gets incremented, it wraps around to its lowest possible negative value. This means a 32-bit signed integer, such as a time_t, set to its maximum value of 2 147 483 647 and then incremented by 1, will become -2 147 483 648. Note that "-" sign at the beginning of this large number. A time_t value of -2 147 483 648 would represent December 13, 1901 at 8:45:52 PM GMT
Example : Try this
1. Login to yahoo messenger
2. Send instant message to anyone - fine its working...
3. Now, change your system date to 19-Jan-2038, 03:14:07 AM or above (as mentioned in mail)
4. Confirm weather your date is changed
5. Again send instant message to anyone...
Your YM crashes....
Even Gtalk has problem
I want a c program that over comes this
By the year 2038,
the time_t representation for the current time will be over 2 140 000 000. And that's the problem. A modern 32-bit computer stores a "signed integer" data type, such as time_t, in 32 bits. The first of these bits is used for the positive/negative sign of the integer, while the remaining 31 bits are used to store the number itself. The highest number these 31 data bits can store works out to exactly 2 147 483 647. A time_t value of this exact number, 2 147483 647, represents January 19, 2038, at 7 seconds past 3:14 AM Greenwich Mean Time. So, at 3:14:07 AM GMT on that fateful day, every time_t used in a
32-bit C or C++ program will reach its upper limit.
When a signed integer reaches its maximum value and then gets incremented, it wraps around to its lowest possible negative value. This means a 32-bit signed integer, such as a time_t, set to its maximum value of 2 147 483 647 and then incremented by 1, will become -2 147 483 648. Note that "-" sign at the beginning of this large number. A time_t value of -2 147 483 648 would represent December 13, 1901 at 8:45:52 PM GMT
Example : Try this
1. Login to yahoo messenger
2. Send instant message to anyone - fine its working...
3. Now, change your system date to 19-Jan-2038, 03:14:07 AM or above (as mentioned in mail)
4. Confirm weather your date is changed
5. Again send instant message to anyone...
Your YM crashes....
Even Gtalk has problem
I want a c program that over comes this