Anyone know how to get gcc running on linux to recognise an unsigned 64 bit integer?
The uint64 type was recognised when this code ran on VMS, but now it chucks up compiler errors - uint64_t doesn't seem to do anything differently. Is there a header file I'm missing?
edit: Well, I'm confused - the documentation I've seen claimed int64_t and uint64_t are standard c99 types, but it wouldn't compile until I replaced them with "long long" and "unsigned long long"
Have you tried compiling as C99. I believe GCC's default is to use gnu90, that is, ANSI C with GNU extensions. Try --std=c99 or --std=gnu99 as compiler flags if you have not done so.
it's compiling as c99, using -std=c99. For the record it's gcc 3.4.6
Seeing as long long works it's more of a curiousity now, still - annoying as it took me half an hour to find any cogent documentation.
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.