This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


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

Bug Report


Bug Report:


Platform       : SCO Open Server 5

GCC version    : 2.95.2pl1 (24 Oct 1999)

Command line   : gcc -v --save-temps -O3 mytest.c


Command Output :

Reading specs from
/usr/local/lib/gcc-lib/i386-pc-sco3.2v5.0.5/2.95.2/specs
gcc version 2.95.2 19991024 (release)
 /usr/local/lib/gcc-lib/i386-pc-sco3.2v5.0.5/2.95.2/cpp -lang-c -v
-D__GNUC__=2
-D__GNUC_MINOR__=95 -Asystem(svr3) -D__OPTIMIZE__ -Acpu(i386)
-Amachine(i386) -D
i386 -D__i386 -D__i386__ -D__i386 -D__unix -D_SCO_DS=1 -D_M_I386
-D_M_XENIX -D_M
_UNIX -D_STRICT_NAMES -D_SCO_XPG_VERS=4 -D_M_I86 -D_M_I86SM
-D_M_INTERNAT -D_M_S
DATA -D_M_STEXT -D_M_BITFIELDS -D_M_SYS5 -D_M_SYSV -D_M_SYSIII
-D_M_WORDSWAP -Du
nix -DM_I386 -DM_UNIX -DM_XENIX -D_SCO_ELF -D_SCO_C_DIALECT=1 mytest.c
mytest.i
GNU CPP version 2.95.2 19991024 (release) (i386, SCO OpenServer 5
Syntax)
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /usr/local/lib/gcc-lib/i386-pc-sco3.2v5.0.5/2.95.2/../../../../i386-pc-sco3.2v5

.0.5/include
 /usr/local/lib/gcc-lib/i386-pc-sco3.2v5.0.5/2.95.2/include
 /usr/include
End of search list.
The following default directories have been omitted from the search
path:
 /usr/local/lib/gcc-lib/i386-pc-sco3.2v5.0.5/2.95.2/../../../../include/g++-3

End of omitted list.
 /usr/local/lib/gcc-lib/i386-pc-sco3.2v5.0.5/2.95.2/cc1 mytest.i -quiet
-dumpbas
e mytest.c -O3 -version -o mytest.s
GNU C version 2.95.2 19991024 (release) (i386-pc-sco3.2v5.0.5) compiled
by GNU C
 version 2.95.2 19991024 (release).
 /usr/ccs/bin/as -b elf -Ea,XPG4PLUS,ELF -Qn -o mytest.o mytest.s
 /usr/local/lib/gcc-lib/i386-pc-sco3.2v5.0.5/2.95.2/collect2 -b elf
-Ra,XPG4PLUS
,ELF -YP,/usr/ccs/lib:/lib:/usr/lib -Qn /usr/ccs/lib/crt1.o
/usr/ccs/lib/values-
Xa.o /usr/local/lib/gcc-lib/i386-pc-sco3.2v5.0.5/2.95.2/crtbegin.o
-L/usr/local/
lib/gcc-lib/i386-pc-sco3.2v5.0.5/2.95.2 -L/usr/ccs/bin -L/usr/ccs/lib
-L/usr/loc
al/lib mytest.o -lgcc -lcrypt -lgen -lc -lgcc
/usr/local/lib/gcc-lib/i386-pc-sco
3.2v5.0.5/2.95.2/crtend.o /usr/ccs/lib/crtn.o


Test Output :

This doesn't work
i=0  1:
i=2  2:
i=3  3:
i=4  4:
i=5  5:
i=6  6:
i=7  7:
i=8  8:
This works
i=0  0:
i=1  1:
i=2  2:
i=3  3:
i=4  4:
i=5  5:
i=6  6:
i=7  7:
i=8  8:


Thanks for your attention.

Best regards,
Rommy Taslim
Transport Administrative Services
# 1 "mytest.c"
# 1 "/usr/include/stdio.h" 1 3
 


# 16 "/usr/include/stdio.h" 3

 











 
 
 

 
 
 
 




#pragma comment(exestr, "xpg4plus @(#) stdio.h 20.2 95/12/11 ")

#pragma pack(4)







typedef unsigned int	size_t;




typedef long	fpos_t;




typedef long	wchar_t;




typedef long	wint_t;





















































 









typedef struct _FILE_	 
{
	int		__cnt;	 
	unsigned char	*__ptr;	 
	unsigned char	*__base;	 
	unsigned char	__flag;	 
	unsigned char	__file;	 
	unsigned char	__buf[2]; 
} FILE;



extern FILE	__iob[];











typedef char * 	va_list;


extern int	remove(const char *);
extern int	rename(const char *, const char *);
extern FILE	*tmpfile(void);
extern char	*tmpnam(char *);
extern int	fclose(FILE *);
extern int	fflush(FILE *);
extern FILE	*fopen(const char *, const char *);
extern FILE	*freopen(const char *, const char *, FILE *);
extern void	setbuf(FILE *, char *);
extern int	setvbuf(FILE *, char *, int, size_t);
		 
extern int	fprintf(FILE *, const char *, ...);
		 
extern int	fscanf(FILE *, const char *, ...);
		 
extern int	printf(const char *, ...);
		 
extern int	scanf(const char *, ...);
		 
extern int	sprintf(char *, const char *, ...);
		 
extern int	sscanf(const char *, const char *, ...);
extern int	vfprintf(FILE *, const char *, char * );
extern int	vprintf(const char *, char * );
extern int	vsprintf(char *, const char *, char * );
extern int	fgetc(FILE *);
extern char	*fgets(char *, int, FILE *);
extern int	fputc(int, FILE *);
extern int	fputs(const char *, FILE *);
extern int	getc(FILE *);
extern int	getchar(void);
extern char	*gets(char *);
extern int	putc(int, FILE *);
extern int	putchar(int);
extern int	puts(const char *);
extern int	ungetc(int, FILE *);
extern size_t	fread(void *, size_t, size_t, FILE *);
#pragma int_to_unsigned fread
extern size_t	fwrite(const void *, size_t, size_t, FILE *);
#pragma int_to_unsigned fwrite
extern int	fgetpos(FILE *, fpos_t *);
extern int	fseek(FILE *, long, int);
extern int	fsetpos(FILE *, const fpos_t *);
extern long	ftell(FILE *);
extern void	rewind(FILE *);
extern void	clearerr(FILE *);
extern int	feof(FILE *);
extern int	ferror(FILE *);
extern void	perror(const char *);

extern int	__filbuf(FILE *);
extern int	__flsbuf(int, FILE *);

















extern int	(fileno)(FILE *);  
extern char	*ctermid(char *);
extern FILE	*fdopen(int, const char *);

extern FILE	*popen(const char *, const char *);
extern char	*tempnam(const char *, const char *);
extern int	getw(FILE *);
extern int	putw(int, FILE *);
extern int	pclose(FILE *);

 



extern char	*optarg;
extern int	optind, opterr, optopt;
extern char	*cuserid(char *);  
extern int	getopt(int, char *const*, const char *);

# 264 "/usr/include/stdio.h" 3



extern int	system(const char *);
extern wint_t	fgetwc(FILE *);
extern wchar_t	*fgetws(wchar_t *, int, FILE *);
extern wint_t	fputwc(wint_t, FILE *);
extern int	fputws(const wchar_t *, FILE *);
extern wint_t	getwc(FILE *);
extern wint_t	getwchar(void);
extern wint_t	putwc(wint_t, FILE *);
extern wint_t	putwchar(wint_t);
extern wint_t	ungetwc(wint_t, FILE *);
		 
extern int	fwprintf(FILE *, const wchar_t *, ...);
		 
extern int	fwscanf(FILE *, const wchar_t *, ...);
		 
extern int	wprintf(const wchar_t *, ...);
		 
extern int	wscanf(const wchar_t *, ...);
		 
extern int	swprintf(wchar_t *, size_t, const wchar_t *, ...);
		 
extern int	swscanf(const wchar_t *, const wchar_t *, ...);
extern int	vfwprintf(FILE *, const wchar_t *, char * );
extern int	vfwscanf(FILE *, const wchar_t *, char * );
extern int	vwprintf(const wchar_t *, char * );
extern int	vwscanf(const wchar_t *, char * );
extern int	vswprintf(wchar_t *, size_t, const wchar_t *, char * );
extern int	vswscanf(const wchar_t *, const wchar_t *, char * );
extern void	funflush(FILE *);
		 
extern int	snprintf(char *, size_t, const char *, ...);
extern int	vsnprintf(char *, size_t, const char *, char * );
extern int	vfscanf(FILE *, const char *, char * );
extern int	vscanf(const char *, char * );
extern int	vsscanf(const char *, const char *, char * );

 





		 
extern int	nl_fprintf(FILE *, const char *, ...);
		 
extern int	nl_fscanf(FILE *, const char *, ...);
		 
extern int	nl_printf(const char *, ...);
		 
extern int	nl_scanf(const char *, ...);
		 
extern int	nl_sprintf(char *, const char *, ...);
		 
extern int	nl_sscanf(const char *, const char *, ...);







#pragma pack()



# 1 "mytest.c" 2

# 1 "/usr/include/string.h" 1 3
 


# 16 "/usr/include/string.h" 3

 











 
 
 

 
 
 
 




#pragma comment(exestr, "xpg4plus @(#) string.h 20.2 95/09/07 ")
















extern void	*memchr(const void *, int, size_t);
extern void	*memcpy(void *, const void *, size_t);
extern void	*memccpy(void *, const void *, int, size_t);
extern void	*memmove(void *, const void *, size_t);
extern void	*memset(void *, int, size_t);

extern char	*strchr(const char *, int);
extern char	*strcpy(char *, const char *);
extern char	*strncpy(char *, const char *, size_t);
extern char	*strcat(char *, const char *);
extern char	*strncat(char *, const char *, size_t);
extern char	*strpbrk(const char *, const char *);
extern char	*strrchr(const char *, int);
extern char	*strstr(const char *, const char *);
extern char	*strtok(char *, const char *);
extern char	*strtok_r(char *, const char *, char **);
extern char	*strerror(int);
extern char	*strlist(char *, const char *, ...);

extern int	memcmp(const void *, const void *, size_t);
extern int	strcmp(const char *, const char *);
extern int	strcoll(const char *, const char *);
extern int	strncmp(const char *, const char *, size_t);

extern char *strdup(const char *);

extern void perror(const char *);
extern int     strncoll(const char *, const char *, int);
extern size_t  strnxfrm(char *, const char *, size_t , int);

extern size_t	strxfrm(char *, const char *, size_t);
extern size_t	strcspn(const char *, const char *);
extern size_t	strspn(const char *, const char *);
extern size_t	strlen(const char *);







# 110 "/usr/include/string.h" 3



extern int	ffs(int);
 



extern int nl_strcmp(char *, char *);
extern int nl_strncmp(char *, char *, int n);









# 2 "mytest.c" 2

# 1 "/usr/local/lib/gcc-lib/i386-pc-sco3.2v5.0.5/2.95.2/include/stdlib.h" 1 3
 


# 16 "/usr/local/lib/gcc-lib/i386-pc-sco3.2v5.0.5/2.95.2/include/stdlib.h" 3

 











 
 
 

 
 
 
 




#pragma comment(exestr, "xpg4plus @(#) stdlib.h 20.3 95/09/13 ")





#pragma pack(4)



typedef	struct
{
	int	quot;
	int	rem;
} div_t;




typedef struct
{
	long	quot;
	long	rem;
} ldiv_t;









typedef int	ssize_t;
















 










extern unsigned char	__ctype[];



extern double	atof(const char *);
extern int	atoi(const char *);
extern long	atol(const char *);
extern double	strtod(const char *, char **);
extern float	strtof(const char *, char **);
extern long	strtol(const char *, char **, int);
extern unsigned long	strtoul(const char *, char **, int);

extern int	rand(void);
extern void	srand(unsigned int);

extern void	*calloc(size_t, size_t);
extern void	free(void *);
extern void	*malloc(size_t);
extern void	*realloc(void *, size_t);

extern void	abort(void);
extern int	atexit(void (*)(void));
extern void	exit(int);
extern char	*getenv(const char *);
extern int	system(const char *);

extern void	*bsearch(const void *, const void *, size_t, size_t,
			int (*)(const void *, const void *));
extern void	qsort(void *, size_t, size_t,
			int (*)(const void *, const void *));







extern int	(abs)(int);	 


extern div_t	div(int, int);
extern long	labs(long);
extern ldiv_t	ldiv(long, long);

extern int	mbtowc(wchar_t *, const char *, size_t);
extern int	mblen(const char *, size_t);
extern int	wctomb(char *, wchar_t);

extern size_t	mbstowcs(wchar_t *, const char *, size_t);
extern size_t	wcstombs(char *, const wchar_t *, size_t);


extern long	a64l(const char *);
extern char	*ecvt(double, int, int *, int *);
extern char	*fcvt(double, int, int *, int *);
extern char	*gcvt(double, int, char *);
extern int	getsubopt(char **, char *const *, char **);
extern int	grantpt(int);
extern char	*initstate(unsigned, char *, int);
extern char	*l64a(long);
extern char	*mktemp(char *);
extern int	mkstemp(char *);
extern char	*ptsname(int);
extern long	random(void);
extern char	*realpath(const char *, char *);
extern char	*setstate(char *);
extern void	srandom(unsigned);
extern int	ttyslot(void);
extern int	unlockpt(int);
extern void	*valloc(size_t);



extern int	dup2(int, int);
extern char	*getcwd(char *, size_t);
extern char	*getlogin(void);
extern int	getopt(int, char *const *, const char *);
extern char	*optarg;
extern int	optind, opterr, optopt;
extern char	*getpass(const char *);
extern int	getpw(int, char *);
extern int	isatty(int);
extern void	l3tol(long *, const char *, int);
extern void	ltol3(char *, const long *, int);
extern char	*l64a_r(long, char *, size_t);
extern void	*memalign(size_t, size_t);
extern int	rand_r(unsigned int *);
extern void	swab(const void *, void *, ssize_t);
extern char	*ttyname(int);
extern double	wcstod(const wchar_t *, wchar_t **);
extern float	wcstof(const wchar_t *, wchar_t **);
extern long	wcstol(const wchar_t *, wchar_t **, int);
extern unsigned long	wcstoul(const wchar_t *, wchar_t **, int);

extern char	*ecvtl(long double, int, int *, int *);
extern char	*fcvtl(long double, int, int *, int *);
extern char	*gcvtl(long double, int, char *);
extern long double	strtold(const char *, char **);
extern long double	wcstold(const wchar_t *, wchar_t **);



extern double	drand48(void);
extern double	erand48(unsigned short *);
extern long	jrand48(unsigned short *);
extern void	lcong48(unsigned short *);
extern long	lrand48(void);
extern long	mrand48(void);
extern long	nrand48(unsigned short *);
extern int	putenv(const char *);
extern unsigned short	*seed48(unsigned short *);
extern void	setkey(const char *);
extern void	srand48(long);









#pragma pack()












# 3 "mytest.c" 2


int main(int argc, char **argv)
{
	int 	i;
	char	s1[10][15];
	char	*s2[10];

	printf("This doesn't work\n");
	for (i=0; i < 9; i++)
        {
		sprintf(s1[i], "%2d:", i+1);
		s2[i] = s1[i];
		printf("i=%d %s\n", i, s2[i]);
	}
	s2[i] = 0 ;

	printf("This works\n");
	for (i=0; i < 9; i++)
        {
		sprintf(s1[i], "%2d:", i);
		s2[i] = s1[i];
		printf("i=%d %s\n", i, s2[i]);
	}
	s2[i] = 0 ;
}

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