develooper Front page | perl.perl5.porters | Postings from January 2012

Re: [perl #75340] gcc 4.5.0 c++ warnings compiling miniperl in5.12.1

Thread Previous | Thread Next
From:
Tony Cook
Date:
January 15, 2012 16:49
Subject:
Re: [perl #75340] gcc 4.5.0 c++ warnings compiling miniperl in5.12.1
Message ID:
20120116004931.GB27964@mars.tony.develop-help.com
On Sat, Jan 14, 2012 at 07:23:14PM -0800, James E Keenan via RT wrote:
> On Mon May 24 16:58:03 2010, toddr@cpanel.net wrote:
> > I just installed GCC 4.5.0 and am seeing the following warnings during
> >    the build process. I thought someone might want to take a look:
> > 
> > 
> > `sh  cflags "optimize='-Os'" malloc.o` -fPIC malloc.c
> > 	  CCCMD =  gcc.4.5.0 -DPERL_CORE -c -fno-strict-aliasing -pipe
> >    -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE
> >    -D_FILE_OFFSET_BITS=64  -std=c89 -Os  -Wall -ansi -W -Wextra
> >    -Wdeclaration-after-statement -Wendif-labels -Wc++-compat
> > malloc.c:883:7: warning: cast from pointer to integer of different
> >    size
> > malloc.c: In function 'getpages':
> > malloc.c:1694:14: warning: comparison between signed and unsigned
> >    integer expressions
> > 
> > 
> > `sh  cflags "optimize='-Os'" pp.o` -fPIC pp.c
> > 	  CCCMD =  gcc.4.5.0 -DPERL_CORE -c -fno-strict-aliasing -pipe
> >    -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE
> >    -D_FILE_OFFSET_BITS=64  -std=c89 -Os  -Wall -ansi -W -Wextra
> >    -Wdeclaration-after-statement -Wendif-labels -Wc++-compat
> > pp.c: In function 'Perl_pp_not':
> > pp.c:2488:31: warning: identifier "not" is a special operator name in
> >    C++
> > pp.c: In function 'Perl_pp_complement':
> > pp.c:2495:37: warning: identifier "compl" is a special operator name
> >    in C++
> > 
> > 
> > `sh  cflags "optimize='-Os'" pp_sys.o` -fPIC pp_sys.c
> > 	  CCCMD =  gcc.4.5.0 -DPERL_CORE -c -fno-strict-aliasing -pipe
> >    -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE
> >    -D_FILE_OFFSET_BITS=64  -std=c89 -Os  -Wall -ansi -W -Wextra
> >    -Wdeclaration-after-statement -Wendif-labels -Wc++-compat
> > pp_sys.c: In function 'Perl_pp_getpriority':
> > pp_sys.c:4412:5: warning: enum conversion when passing argument 1 of
> >    'getpriority' is invalid in C++
> > /usr/include/sys/resource.h:94:12: note: expected '__priority_which_t'
> >    but argument is of type 'int'
> > pp_sys.c: In function 'Perl_pp_setpriority':
> > pp_sys.c:4428:5: warning: enum conversion when passing argument 1 of
> >    'setpriority' is invalid in C++
> > /usr/include/sys/resource.h:98:12: note: expected '__priority_which_t'
> >    but argument is of type 'int'
> > 
> 
> Do you recall what arguments, if any, you supplied to 'Configure' before
> doing this build?
> 
> Have you noticed any peculiarities when using the Perl you built in this
> instance?

Most of these have been fixed - in particular pp.c was fixed in
9500e8e2396502af05bf3891caf7e5d5cc9dc8d9.

pp_sys.c was fixed in 5baa2e4f63f67b815dd697a5b4faca51f3e23b5f and
adjusted in 8b079db663fda8b4ad5c7f33655632c57d3e32fd.

The malloc.c warnings still occur as of
bdd2b37b5c6133a3b8647bb19d63f9598457d4d4:

          CCCMD =  /opt/gcc-4.6.0/bin/gcc -DPERL_CORE -c -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -std=c89 -O2  -Wall -ansi -W -Wextra -Wdeclaration-after-statement -Wendif-labels -Wc++-compat -Wwrite-strings 
malloc.c:708:7: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
malloc.c: In function ‘getpages’:
malloc.c:1509:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]

But no-one uses usemymalloc, do they? ;)

Tony

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About