From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20920 invoked by alias); 14 May 2003 19:16:00 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 20904 invoked by uid 71); 14 May 2003 19:16:00 -0000 Date: Wed, 14 May 2003 19:16:00 -0000 Message-ID: <20030514191600.20902.qmail@sources.redhat.com> To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org, From: Andrew Pinski Subject: Re: c++/10790: g++/gcc Reply-To: Andrew Pinski X-SW-Source: 2003-05/txt/msg01686.txt.bz2 List-Id: The following reply was made to PR c++/10790; it has been noted by GNATS. From: Andrew Pinski To: lgang@yahoo.com, "Gcc-Bugs@Gcc. Gnu. Org" Cc: Andrew Pinski , gcc-gnats@gcc.gnu.org Subject: Re: c++/10790: g++/gcc Date: Wed, 14 May 2003 15:09:40 -0400 This is a GCC extension so it is not a bug, use -pedantic or -pedantic-errors to see that they are not accepted. I get some warnings or errors if -pedantic-errors: test2.cc: In function `int main()': test2.cc:7: warning: ISO C++ forbids variable-size array `arr' test2.cc:9: warning: ISO C++ forbids variable-size array `arr2' Thanks, Andrew Pinski PS can someone close this bug as it is not really a bug but a misunderstanding of GCC extensions. On Wednesday, May 14, 2003, at 13:59 US/Eastern, lgang@yahoo.com wrote: > >> Number: 10790 >> Category: c++ >> Synopsis: g++/gcc >> Confidential: no >> Severity: serious >> Priority: medium >> Responsible: unassigned >> State: open >> Class: sw-bug >> Submitter-Id: net >> Arrival-Date: Wed May 14 18:06:00 UTC 2003 >> Closed-Date: >> Last-Modified: >> Originator: lgang@yahoo.com >> Release: G++ 3.2 >> Organization: >> Environment: > Solaris 8 >> Description: > Should a non-constant array be allowed in C/C++? I guess not. See the > following code. > > int main() > { > int c; > scanf("%d", &c); > int arr[c]; > int p; > char arr2[c]; > int another; > printf ("Terrible, diff=%d, diff=%d\n", > (char*)&c-(char*)&p, (char*)&p - (char*)&another); > return 0; > } > > Seems that compiler treats it int arr[c] as int *arr. I don't think > it should compile. > > Thanks >> How-To-Repeat: > >> Fix: > >> Release-Note: >> Audit-Trail: >> Unformatted: > >