This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: My C arrays are too large


2019年9月14日(土) 3:50 Jose Isaias Cabrera <jicman@outlook.com>:

>
> Achim Gratz, on Friday, September 13, 2019 02:39 PM, wrote...
> >
> > Blair, Charles E III writes:
> > > My apologies for failing to reply on-list.  I don't know how :(
> > >
> > > My machine is 64 bit, and I hope I installed the correct version of
> cygwin.
> > >
> > > This program:
> > >
> > > #include<stdio.h>
> > > int main(){char *a[50][8192];
> > > return 0;}
> > >
> > > compiles with gcc  (no special options) but gives "Segmentation fault".
> >
> > You are creating an automatic variable that's larger than the default
> > stack.  You need to enlarge the stack, either during link time or later
> > e.g. via
> >
> > peflags -x0x800000 a.out
>
> This is great! Thanks.
>
> But, let's talk about this a bit... Shouldn't the compiler provide some
> warning, and also, it should never blow up with a "Segmentation fault".  I
> believe there should be some type of Out Of Memory error, or something like
> it.  But now just blow up.  Anyone thinks like me?  Just my 102 Dominican
> cents ($1 = $51 Dominican). :-)
>

Well, the behavior of the compiler itself is better discussed on the
compiler's forums, although you may need your asbestos suit when you do so.

That said, why do you want this variable to be automatic? Why do you want
it allocated on the stack?

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]