Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

the Year 2038 problem

Name: Anonymous 2009-01-06 1:18

Just saw this article on Reddit, thought you /programmers/ might be interested:
http://pw1.netcom.com/~rogermw/Y2038.html

Name: Anonymous 2009-01-06 1:50

#include <limits.h>
#include <stdio.h>
#include <time.h>

int main(void){
  printf("time_t is %d bits.\n", sizeof(time_t) * CHAR_BIT);
  return 0;
}


time_t is 64 bits.

problem solved.

Name: Anonymous 2009-01-06 1:52

No exceptions

Name: Anonymous 2009-01-06 2:22

$ ./timet
time_t is 48 bits.
$ uname
Anonix
$

Name: Anonymous 2009-01-06 2:27

Name: Anonymous 2009-01-06 2:44

asdf@localh0rst ~/src $ ./timet
time_t is 32 bits.
asdf@localh0rst ~/src $ uname
Linux


I'M FUCKED!

Name: Anonymous 2009-01-06 3:08

asdf
localh0rst
Back to fairX's community of hax ;), please.

Name: FrozenVoid !FrOzEn2BUo 2009-01-06 5:57

I don't use Unix Time.
I just get it from new Date() object which can handle dates up to
 275479 AD.

Name: Anonymous 2009-01-06 5:58

Go away.

Name: Anonymous 2009-01-06 6:32

it's a load of shit basically, amd64 unixes already use 64bit time_t.

Name: FrozenVoid !FrOzEn2BUo 2009-01-06 6:34

>>10
Alot of legacy software uses Unix Time.

Name: Anonymous 2009-01-06 8:08

it's not like anyone will use IA-32 in 2038. changing the integer range of typedef time_t preserves the API. even if someone will in fact use IA-32, the type can be changed to long long. what's the big deal?

Name: Anonymous 2009-01-06 8:15

it's not like anyone will use IA-32 in 2038.
it's not like anyone will use 2-digit dates in 1999.

Name: Anonymous 2009-01-06 8:19

There's a difference between a typedef and moronic COBOL programmers encoding year as a two-character string.

Name: Anonymous 2009-01-06 8:22


#ifdef OLD_GAY_LEGACY_CODE
typedef int32_t time_t;
#else
typedef int64_t time_t;
#endif

Name: Anonymous 2009-01-06 8:48

Yeah, all it needs is a recompile as opposed to replacing every instance of COBOL retardation in the code base. No big deal.

Name: Anonymous 2009-01-06 9:32

$ ./timet
time_t is 64 bits.
$ uname -prs
MirBSD 10 i386

Name: Anonymous 2009-01-06 14:21

C:\Documents and Settings\James>timet
'timet' is not recognized as an internal or external command,
operable program or batch file.

Name: Anonymous 2009-01-06 14:26

>>18
Stop using Windows, James.

Name: Anonymous 2009-01-06 15:30

[chris@haxbox:~] ./timet
bash: ./timet: This is not Ubuntu, faggot

Name: Anonymous 2009-01-06 16:15

$ timet
time_t is 32 bits.
$ uname
MINGW32_NT-5.1


In 2038, 89.62% of computers will be hosed.

But in 2019, we have another rollover to worry about:
"'GPS Week' count starts at midnight 5-6 January 1980 UTC, and that the GPS Week field is modulo 1024. This means that the week count will roll over 7168/365.25 = 19.6249 years from then, or in 1980+19.625 = 1999.638 (August 21, 1999), only a few years from now."
http://navcen.uscg.gov/gps/geninfo/y2k/gpsweek.htm

Name: Anonymous 2009-01-06 17:19

>>21
In 2038, 89.62% of computers from 2009 will be hosed.

Name: Anonymous 2009-01-06 17:41

>>12
Did you even read the previous fucking post?

Name: Anonymous 2009-01-06 17:53

>>13
Here's a more apt analogy: it's not like anyone will use software compiled in 1969 in 2000.
The fix doesn't even involve any rewriting of old code, just a recompiling of software using statically linked libraries.

Name: FrozenVoid!FrOzEn2BUo 2009-01-06 18:38

>>24
 Well not really, because do you know how long it takes to recompile libC? I was reading a SlashDot article, and it stated that the 2038 bug might take from 8 - 12 months to fix.

Name: Anonymous 2009-01-06 18:46

>>20
asdf@localh0rst ~/src $ sudo ./timet
sudo: This is not ubuntu, faggot.

Name: Anonymous 2009-01-06 18:48

$ make me a sandwich
make: *** No rule to make target `me'.  Stop.
$ sudo make me a sandwich
sudo: This is not Ubuntu, faggot.

Name: Anonymous 2009-01-06 18:49

>>25
Now you're trying too hard. 0/10

Name: Anonymous 2009-01-06 19:47

$ ./timet
time_t is 27 bits.
$ uname
This is not Ubuntu, faggot.

Name: Anonymous 2009-01-06 19:48

mirbsd already uses a 64-bit time_t on x86. netbsd and openbsd are probably going to switch to using 64-bit time_t in x86 soon. pretty much every *nix available for x86-64 uses a 64-bit time_t.
most people will be using x86-64 by 2038, and the few people who will still be using x86 will have plenty of operating systems with 64-bit time_t to choose from.

>>21
wrong.
7168/365.2425 = 19.62531742609362273010
1980 + 19.62531742609362273010 = 1999.62531742609362273010 = August 16, 1999

>>25
it takes less than 6 hours (i'm not sure exactly how long, i just start it and leave and then come back 6 hours later and it's done) to compile freebsd (including the kernel, libc, and the rest of the base system) on my server with a 733MHz pentium III.
compare that to compiling java, which takes about a week on a 2GHz core 2 duo.

Name: Anonymous 2009-01-06 20:02

compare that to compiling java
Must be GNU java

Name: Anonymous 2009-01-06 22:56

>>29
Enjoyed Q4 of 1974?

Name: Anonymous 2009-02-25 7:57

Computers were made out   of drums and   vacuum tubes Real   Programmers wrote in   Visual Basic to   write a GUI   when you have   BEEN TROLLED nc.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List