public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* middle-end/7898: gcc-3.2 readdir_r regression on solaris 2.6
@ 2002-09-12 12:36 sadinoff
  0 siblings, 0 replies; only message in thread
From: sadinoff @ 2002-09-12 12:36 UTC (permalink / raw)
  To: gcc-gnats; +Cc: danny


>Number:         7898
>Category:       middle-end
>Synopsis:       readdir_r gives bad results with gcc-3.1 and 3.2
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          wrong-code
>Submitter-Id:   net
>Arrival-Date:   Thu Sep 12 12:36:01 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     
>Release:        3.2
>Organization:
>Environment:
System: SunOS xxx.yyy.zzz.com 5.6 Generic_105181-30 sun4u sparc SUNW,Ultra-Enterprise
Architecture: sun4

	<machine, os, target, libraries (multiple lines)>
host: sparc-sun-solaris2.6
build: sparc-sun-solaris2.6
target: sparc-sun-solaris2.6
configured with: ../gcc-3.2/configure --prefix=/opt/gcc-3.2 --with-gnu-as --with-as=/opt/bin/as --with-gnu-ld --with-ld=/opt/bin/ld
>Description:
	Note that this was built with gas and gld from binutils 2.12.1
		
	When migrating from gcc-2.95.1 to gcc-3.1 and 3.2, I notice that readdir_r has gone haywire.
	This may have something to do with fixincludes, but I can't quite tell.  

        As you may know, the solaris include file for dirent.h is a mess, so I'm compiling with 
        CPPFLAGS += -D_POSIX_C_SOURCE=200106L
        CPPFLAGS += -D_FILE_OFFSET_BITS=64
	  
	which should make things as POSIX as possible.

	Basically, it looks like readdir_r is overwriting the stack
        and other nasty things in 3.2, and it was well-behaved with gcc-2.95.1
	
>How-To-Repeat:
	Enclosed is a makefile and c source to compare the two compilers.  I'm also including the preprocessor output from both.
	

### Here are the results:
$ make test-all
make[1]: Entering directory `/home/sadind/tmp/sadind/test-readdir_r'
rm -f test-readdir *.o
make[1]: Leaving directory `/home/sadind/tmp/sadind/test-readdir_r'
make[1]: Entering directory `/home/sadind/tmp/sadind/test-readdir_r'


COMPILER IS /opt/gcc-2.95.1/bin/gcc
make run
make[2]: Entering directory `/home/sadind/tmp/sadind/test-readdir_r'
/opt/gcc-2.95.1/bin/gcc  -D_POSIX_C_SOURCE=200106L -D_FILE_OFFSET_BITS=64 -g  -c -o test-readdir.o test-readdir.c
/opt/gcc-2.95.1/bin/gcc test-readdir.o -o test-readdir
./test-readdir .
<count is 0
>Fix:
	Unknown

--ELM1031858850-3469-0_
Content-Transfer-Encoding: base64
Content-Type: application/gzip
Content-Disposition: attachment; filename=test-readdir_r.tar.gz
Content-Description: tarball of demo source and cpp output

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

--ELM1031858850-3469-0_--
>Release-Note:
>Audit-Trail:
>Unformatted:
 --ELM1031858850-3469-0_
 Content-Transfer-Encoding: 7bit
 Content-Type: text/plain; charset=US-ASCII
 
 >count is 0
 result:0, file: .
 entryPointer is efffdf58
 
 <count is 1
 >count is 1
 result:0, file: ..
 entryPointer is efffdf58
 
 <count is 2
 >count is 2
 result:0, file: .svn
 entryPointer is efffdf58
 
 <count is 3
 >count is 3
 result:0, file: test-readdir.c
 entryPointer is efffdf58
 
 <count is 4
 >count is 4
 result:0, file: Makefile
 entryPointer is efffdf58
 
 <count is 5
 >count is 5
 result:0, file: test-readdir.o
 entryPointer is efffdf58
 
 <count is 6
 >count is 6
 result:0, file: test-readdir
 entryPointer is efffdf58
 
 <count is 7
 >count is 7
 result:-1, file: test-readdir
 entryPointer is 0
 
 returned nonzero.
 found 7 files
 make[2]: Leaving directory `/home/sadind/tmp/sadind/test-readdir_r'
 make[1]: Leaving directory `/home/sadind/tmp/sadind/test-readdir_r'
 make[1]: Entering directory `/home/sadind/tmp/sadind/test-readdir_r'
 rm -f test-readdir *.o
 make[1]: Leaving directory `/home/sadind/tmp/sadind/test-readdir_r'
 make[1]: Entering directory `/home/sadind/tmp/sadind/test-readdir_r'
 
 
 COMPILER IS /opt/gcc-3.2/bin/gcc
 make run
 make[2]: Entering directory `/home/sadind/tmp/sadind/test-readdir_r'
 /opt/gcc-3.2/bin/gcc  -D_POSIX_C_SOURCE=200106L -D_FILE_OFFSET_BITS=64 -g  -c -o test-readdir.o test-readdir.c
 /opt/gcc-3.2/bin/gcc test-readdir.o -o test-readdir
 ./test-readdir .
 <count is 0
 >count is 0
 result:0, file: .
 entryPointer is efffdf88
 
 <count is 1
 >count is 1
 result:0, file: ..
 entryPointer is efffdf88
 
 <count is 2
 >count is 2
 result:0, file: .svn
 entryPointer is efffdf88
 
 <count is 3
 >count is 1769090659
 result:0, file: test-readdir.c
 entryPointer is efffdf88
 
 badness.  count is too large
 found 1769090659 files
 make[2]: Leaving directory `/home/sadind/tmp/sadind/test-readdir_r'
 make[1]: Leaving directory `/home/sadind/tmp/sadind/test-readdir_r'
 		
 


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2002-09-12 19:36 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-09-12 12:36 middle-end/7898: gcc-3.2 readdir_r regression on solaris 2.6 sadinoff

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).