f



warning: ISO C90 does not support `long long'

Hi,

I am porting an application to djgpp, in which i had to substitute a
data-type with 'long long'. On compilation, I get the warning:

warning: ISO C90 does not support `long long'

And because of this, my application does not compile correctly.

I have used 'long long' with djgpp before, and i know that it works.
Does that mean that this particular application is forcing ISO C90 in
its makefile or somewhere? Is there a way i can not use ISO C90, and in
place use newer definitions for which 'long long' works?

Grateful for any hints ..

Thanks a lot,
Ahmad

0
ahmadwaris (44)
9/28/2005 3:59:13 PM
comp.os.msdos.djgpp 3308 articles. 1 followers. tigrepotrazosalvaje (34) is leader. Post Follow

2 Replies
4337 Views

Similar Articles

[PageSpeed] 25

It's a portability warning.  Yes, djgpp has supported long long for
quite some time now, but gcc is warning you that if you use a
*different* compiler, you might have problems.

It looks like there's a -Wlong-long, or a -pedantic, somewhere in your
gcc command line.

0
dj (1321)
9/28/2005 4:10:46 PM
Oh, thanks. I do have -pedantic on the command line. So its just a
warning!

0
ahmadwaris (44)
9/28/2005 4:35:25 PM
Reply:

Similar Artilces:

Python.h problem-> /usr/include/python2.2/longobject.h:48: warning: ISO C89 does not support `long long'
c extension compilation gives this gripe about python itself with -Wall and -pedantic switches --> /usr/include/python2.2/longobject.h:48: warning: ISO C89 does not support `long long' Is there any way to avoid this? Chris Chris> c extension compilation gives this gripe about python itself with Chris> -Wall and -pedantic switches --> Chris> /usr/include/python2.2/longobject.h:48: warning: ISO C89 does not Chris> support `long long' Chris> Is there any way to avoid this? Sure. Get rid of the -pedantic switch... Skip Skip Thanks for the...

Help! ISO C89 does not support `long long'
While compiling(enything...), for example gcc, it ...: .... /usr/include/stdlib.h:134: warning: ISO C89 does not support `long long' .... And at last: /gcc/config -I../../../gcc-3.2.3/gcc/../include -g -W -Wall -Wwrite- strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditional -pedantic - Wno-long-long plural.c -o plural.o gcc: plural.c: No such file or directory gcc: No input files specified *** Error code 1 Stop in /usr/home/fso/objdir/gcc/intl. *** Error code 1 Stop in /usr/home/fso/objdir/gcc. *** Error code 1 Stop in /usr/home/fso/objdir/gcc. *** Error code 1 Stop in /usr/home/fso/objdir. What it seems dos it means, and how to fix it? Thanx for any answer. P.S.: freebsd 5.1R, machine: CPU: Pentium/P55C (232.67-MHz 586-class CPU) Origin = "GenuineIntel" Id = 0x543 Stepping = 3 Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX> Intel Pentium detected, installing workaround for F00F bug Serhiy Franchuk wrote: > While compiling(enything...), for example gcc, it ...: > > ... > > /usr/include/stdlib.h:134: warning: ISO C89 does not support `long long' > > ... > And at last: > > /gcc/config -I../../../gcc-3.2.3/gcc/../include -g -W -Wall -Wwrite- > strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditional -pedantic - > Wno-long-long plural.c -o plural.o turn on lots of pedantic -W warning flags, compile new code -> get ...

long long and long
Dear all, I had a source code, which was doing matrix integral computation using "int". I had to modify it in order to use "long long". The problem is that "int" was used both for matrix indices and for matrix element. In the version I modified I want to use "long long" for matrix element and "int" for matrix indices. How to be sure that I did not forget anything. "gcc -Wall" accept without difficulties "long long * long" when I would like him to ask for an explicit cast. Could there exist a static source analyzer that de...

How widely supported is variable type 'long long int' ?
I maintain/enhance some inherited FOSS software in C which has compiler options for quite a few different Unix-like operating systems, many of which I've never even heard of. It would be convenient (and for some things possibly necessary) to use long long integer and/or unsigned long long integer variables. How widely supported are these variable types? How long ago were they introduced? I notice they are not mentioned in K&R #2. Thanks for your help. Regards, Charles Sullivan On Jun 22, 2:55 pm, Charles Sullivan <cwsul...@triad.rr.com> wrote: > I maintain/enhance...

C90 long long
From an article about implementing a C99 to C90 translator... How does someone use integer arithmetic of at least 64 bits, and write in pure C90? As I understand C90 (the standard is very elusive), long int is guaranteed to be at least 32 bits only. So, do people rely on their known compiler limits, use clunky emulations, or do not bother with 64 bits when writing ultra-portable code? -- Bart On Sun, 06 Apr 2008 15:37:28 +0000, Bartc wrote: > From an article about implementing a C99 to C90 translator... > > How does someone use integer arithmetic of at least 64 bits, and write > in pure C90? > > As I understand C90 (the standard is very elusive), long int is > guaranteed to be at least 32 bits only. Correct. And as long int is the widest type, C90 does not guarantee the presence of any 64-bit integer type. > So, do people rely on their known compiler limits, use clunky > emulations, or do not bother with 64 bits when writing ultra-portable > code? People do whatever works best for their situation. Sometimes, that may involve redefining the problem to fit 32-bit arithmetic (or floating- point). Sometimes, that may be to rely on long being 64 bits. Sometimes, that may be to use implementation extensions. In any case, it's very much the same as how C90 programs have to deal with complex arithmetic. The language and library don't provide any possibility, so portable programs have no choice but to implement it themselve...

Use of Long and Long Long
I've always had a problem knowing exactly how wide my integer variables were in C, and the little program below has increased my confusion. Run on 3 compilers on the same cpu (32-bit pentium), sometimes int and long int are the same, and long long int is twice the width; or sometimes both long int and long long int are twice the width of int. This apparently all quite normal according to my c99 draft and c-faq.com. However it doesn't alter the fact that this is all very 'woolly' and ambiguous. Integer widths that obey the rule short < int < long int <long long int ...

long long
-------------------------------1109307201 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit >DJGPP already supports 64-bit variables: there's the `long long' data >type which is 64-bit wide. very good ! Thanks. I didn't know that. Probably because it's different in other compilers so when someone sends me a program which uses 64-bit then I can't compile it. #define int long long //#define %i %Li , this doesn't work int i,j; main(){ i=13267364410352; m1:printf("short:%i long:%Li\n",i,i); //this doesn'...

long long
Is there a problem in lcc-win32 with long long and the "<=" operator? I compiled an older program using the integer type long long and got a wrong result: Below a short testprogram to reproduce the error. I would assume to get the result 21 in 0..42 but I get 21 NOT in 0..42. Did I something wrong? O:\Sources\test2>type test2.c #include <stdio.h> int main(void) { long long lTmp = 21; if ( 0 <= lTmp && lTmp <= 42 ) printf("%lld in 0..42\n",lTmp); else printf("%lld NOT in 0..42\n",lTmp); } O:\Sources\...

'long long integer' in Perl
This must be a simple question for the gurus. I would like to assign a bigger than 32-bit integer to a variable. Essentially this variable has to be a 'long long' (64 bit on my machine). $variable = 0xFFFFFFFFA; # 36 bits How do I do this? Using no special syntax produces this message: Integer Overflow in hexadecimal number. Thanks. Swapnajit Mitra wrote: > This must be a simple question for the gurus. I would like to assign a > bigger than 32-bit integer to a variable. Essentially this variable has > to be a 'long long' (64 bit on my machine). > > $...

long long
Hi all, Is long long supposed to be supported in all C99 implementations?If yes is it supposed to be 64 bit at least? GCC says that it supports long long, but i got this: #include <stdio.h> #include <limits.h> int main() { printf("Maximum value for long long: %lld\n", LLONG_MAX); printf("Maximum value for long: %ld\n", LONG_MAX); } C:\c>\mingw\bin\gcc -v Reading specs from /mingw/bin/../lib/gcc-lib/mingw32/3.3.1/specs Configured with: .../gcc/configure --with-gcc --with-gnu-ld --with-gnu-as --host= mingw32 --target=mingw32 --prefix=/mingw --enable-th...

long long
hi! can anyone explain this to me? long long a; what is this "long long"?? something like 8 byte variable (two longs) or what? thanks w3r3w0lf wrote: > hi! > > can anyone explain this to me? > long long a; > > what is this "long long"?? something like 8 byte variable (two longs) or > what? It's usually a sixty-four bit, signed integer type. It's a popular extension. "w3r3w0lf" <asff@asdf.asdf> wrote in message news:c05q2d$j1r$1@ls219.htnet.hr... > can anyone explain this to me? > long long a; > > what is ...

Editorial: abs(long long) should return long long
Quoting the latest draft (n2135), section 26.7 [c.math]: The added signatures are: long abs(long); // labs() long abs(long long); // llabs() Shouldn't abs(long long) have "long long" as return type? -- Niels Dekker http://www.xs4all.nl/~nd/dekkerware Scientific programmer at LKEB, Leiden University Medical Center --- [ comp.std.c++ is moderated. To submit articles, try just posting with ] [ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ] [ --- Please see the FAQ before posting. --- ] [ FAQ: http://ww...

long long and unsigned long long performance on x86
Hi all, Does long long and unsigned long long types achive worst performance when compiled on x86 platform (Visual C++ Express Edition)? All modern CPUs have 64 bit registers, so I suppose that calculations wouldn't suffer using 64 bit integer values on x86 platforms. I am right? Are long long and unsigned long long part of the standard (C/C++)? Thank you all for help :-P { Fact: They are part of the latest C standard -- ISO/IEC 9899:1999, casually known as "C99". They are NOT part of the current C++ standard -- ISO/IEC 14882:2003, a.k.a. "C++03", though they are...

MathLink: support for long longs?
Hi, Many C compilers have a type "long long" for doing 64bit integer arithmetic. Does MathLink support sending and receiving of "long long" values? Thanks, Sascha At 02:05 AM 10/10/2003, Sascha Kratky wrote: >Hi, > >Many C compilers have a type "long long" for doing 64bit integer >arithmetic. Does MathLink support sending and receiving of "long long" >values? > >Thanks, >Sascha Not as a native type, but MathLink does have text interface which allows you to transfer generic data as strings. Here's an e...

LONG LONG INT WARNINGS
Hi The compiler give warnings when I put value to long long int . The warning system warns that the number is too big. Besides the rhide says that this is wrong too . Everything work fine if I ignore this warning. Moshe hi, i'd use the ll / ull sufix to long long literals. alex greenberg moshe wrote: > Hi > The compiler give warnings when I put value to long long int . > The warning system warns that the number is too big. > Besides the rhide says that this is wrong too . > Everything work fine if I ignore this warning. > Moshe > > > ...

In which Solaris version 'typedef long long time_t;' ??
This is an excerpt from the header file existing in Solaris system. 460 typedef long time_t; /* time of day in seconds */ The systems which use this header will face 2038 problem sinch time_t will be used to hold the time values throughout the program. As I understand, redefining the typedef as 460 typedef long long time_t; /* time of day in seconds */ should solve this problem. I would like to know whether new versions of the Solaris systems have this definition already. If yes, kindly give the information about exactly in which version, this change was made. Thanks! On Tue, 27 Jul 2004, ...

longs, long longs, short short long ints . . . huh?!
Is there any standard as to what a long and int mean or is it compiler dependent? Or furthermore architecture dependent? I know a short short long int isn't actually a recognised type, but if you wanted to make sure it was 16-bit, 32-bit or 64-bit etc, can you rely on these type names alone? If not, is there any way to ensure you get a 64/32/16-bit int when you want one? Cheers, Dave. David Geering wrote: > Is there any standard as to what a long and int mean or is it compiler > dependent? Or furthermore architecture dependent? It's compiler and architecture dependent. C ...

long long's on a compiler that doesn't have them
I've thinking of a project that may need 64 bit integers. Now that C99 exists, using 'long long' makes perfect sense. Now the bad news. I hope to make the source compatable with an older C89 type compiler that doesn't have any notion of 'long long'. So I say to myself (self:) just use a structure: typedef struct {long ms; long ls} longer; /* Please excuse if this isn't perfect */ Well, that's fine and dandy, but what is a good portable (efficient??) way of doing the necessary operations on the structure, i.e. add, sub, mul, div. Say a f...

Why is long long int not as long as promised??
I need a >49 bit integer type. tried sizeof(long long), says 8. 8 byte = 64 bit right? but when I try to assign a value with more than 32 bit, it fails. To illustrate: for (i=0; i<64; i++){ long long int k = 1<<i; cout<<i<<"\t"<<k<<"\t"<<sizeof(k)<<"\n"; } results in 1 2 8 2 4 8 3 8 8 4 16 8 5 32 8 6 64 8 7 128 8 8 256 8 9 512 8 10 1024 8 11 2048 8 12 4096 8 13 8192 8 14 16384 8 15 32768 8 16 65536 8 17 131072 8 18 262144 8 19 524288 8 20 1048576 8 21 2097152 8 22 4194304 8 23 8388608 8 24 16777216 ...

RE: Obsucure Inquier article about Intel mentions VMS (and not any other OS') other OS') other OS') other OS') other OS') other OS') other OS') other OS') other OS') other OS') other
> -----Original Message----- > From: JF Mezei [mailto:jfmezei.spamnot@teksavvy.com]=20 > Sent: October 11, 2004 11:45 PM > To: Info-VAX@Mvb.Saic.Com > Subject: Re: Obsucure Inquier article about Intel mentions=20 > VMS (and not any other OS') other OS') other OS') other OS')=20 > other OS') other OS') other OS') other OS') other OS') other=20 > OS') other OS') other OS') other OS') other OS') other OS') other=20 >=20 > "Main, Kerry" wrote: > > Course, there are many ways to offer differen...

RE: Obsucure Inquier article about Intel mentions VMS (and not any other OS') other OS') other OS') other OS') other OS') other OS') other OS') other OS') other OS')
> -----Original Message----- > From: Soterro [mailto:soterroatyahoocom@address.hp.com]=20 > Sent: October 11, 2004 9:43 AM > To: Info-VAX@Mvb.Saic.Com > Subject: Re: Obsucure Inquier article about Intel mentions=20 > VMS (and not any other OS') other OS') other OS') other OS')=20 > other OS') other OS') other OS') other OS') other OS') >=20 > Main, Kerry wrote: > >>From: John Smith [mailto:a@nonymous.com]=20 > >>You aren't directly to blame for this and I know you'd like=20 > >>to keep your > >>job, but just how many times have you and your colleagues=20 > >>written carly(tm) > >>or curly or GQ Bob about this in the past? > >=20 > > Actually, I work with UNIX, Windows as well as OpenVMS.=20 > You're value to > > any corporation goes up exponentially if you know more than one OS.=20 >=20 > I think JS asked something else: is it so out of this world to think=20 > that the insiders could point their superiors to some things? >=20 > S > And you think perhaps that this does not happen? Course, there are many ways to offer different opinions within a large company, but keep in mind that every OS or platform within a company will always try and say it needs more $'s to promote/enhance itself.=20 Take a big company like IBM - what do you think an AIX field person's chances are of convincing their Mgmt to qui...

Portable Test for long long Support
Problem: find a portable way to determine whether a compiler supports the "long long" type of C99. I thought I had this one solved with the following code: #include <limits.h> #ifdef ULONG_LONG_MAX /* 64-bit code */ #endif This seemed to work on most platforms until I compiled today under Mandrake linux i586 (gcc 3.2.2). What's odd is that this compiler supports the "long long" type, yet the 64-bit code didn't get included. Any ideas? Is there a "standard" way to test whether a C compiler supports the C99 types? Mark On Thu, 23 O...

What's wrong with long long?
I use long longs occasionally. I know there are some limitations regarding the standards such as not using long long constants but what's the big deal? Why is long long not used so much? Mike Michael B Allen wrote: > I use long longs occasionally. I know there are some limitations regarding > the standards such as not using long long constants but what's the big > deal? Why is long long not used so much? > > Mike I've played with long long but I don't remember using it in a program. I'm sure that if programming problem arises that requires integers larg...

Avoid 'int', 'long' and 'short'...
.... #include <cstdint> instead! /Flibble On 26/06/2015 20:39, Mr Flibble wrote: > ... #include <cstdint> instead! > > /Flibble you mean using int16_t? why is that? int is the fastest integer so why would i use something else? On 26/06/2015 21:31, JiiPee wrote: > On 26/06/2015 20:39, Mr Flibble wrote: >> ... #include <cstdint> instead! >> >> /Flibble > > you mean using int16_t? why is that? > int is the fastest integer so why would i use something else? Because 'int' is both unsafe and non-portable. If yo...

Web resources about - warning: ISO C90 does not support `long long' - comp.os.msdos.djgpp

Resources last updated: 3/3/2016 6:52:52 AM