This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
gcc-2.95 (19990718) and IRIX 6.2 - conflicting types for built-in function...
- To: gcc-bugs at gcc dot gnu dot org
- Subject: gcc-2.95 (19990718) and IRIX 6.2 - conflicting types for built-in function...
- From: Matthias Kurz <mk at baerlap dot north dot de>
- Date: Fri, 30 Jul 1999 05:17:19 +0200
Hi.
If i compile the following program
#include <strings.h>
int main(int argc, char **argv)
{
int buffer[1024], buffer1[1024];
memcpy(buffer, buffer1, 500);
}
with "gcc -mips3 -mr4000", i get the following warnings:
In file included from /usr/include/sys/select.h:70,
from /usr/include/sys/bsd_types.h:44,
from /usr/include/sys/types.h:335,
from /usr/include/strings.h:15,
from tst.c:2:
/usr/include/string.h:57: warning: conflicting types for built-in function `memcpy'
/usr/include/string.h:64: warning: conflicting types for built-in function `memcmp'
/usr/include/string.h:79: warning: conflicting types for built-in function `memset'
/usr/include/string.h:81: warning: conflicting types for built-in function `strlen'
There are no warnings, if i compile without "-mips3 -mr4000".
(mk)
--
Matthias Kurz; Fuldastr. 3; D-28199 Bremen; VOICE +49 421 53 600 47
# 1 "tst.c"
# 1 "/usr/include/strings.h" 1 3
#ident "$Revision: 1.11 $"
# 1 "/usr/include/standards.h" 1 3
#ident "$Id: standards.h,v 1.7 1995/12/30 02:49:18 jwag Exp $"
# 14 "/usr/include/strings.h" 2 3
# 1 "/usr/include/sys/types.h" 1 3
#ident "$Revision: 3.101 $"
# 1 "/usr/include/sgidefs.h" 1 3
#ident "$Revision: 1.11 $"
typedef int __int32_t;
typedef unsigned __uint32_t;
typedef long long __int64_t;
typedef unsigned long long __uint64_t;
# 214 "/usr/include/sgidefs.h" 3
typedef __int32_t __psint_t;
typedef __uint32_t __psunsigned_t;
typedef __int32_t __scint_t;
typedef __uint32_t __scunsigned_t;
# 30 "/usr/include/sys/types.h" 2 3
typedef unsigned char uchar_t;
typedef unsigned short ushort_t;
typedef unsigned int uint_t;
typedef unsigned long ulong_t;
typedef char * addr_t;
typedef char * caddr_t;
typedef __int64_t daddr_t;
typedef long pgno_t;
typedef __uint32_t pfn_t;
typedef short cnt_t;
typedef __int32_t pgcnt_t;
typedef enum { B_FALSE, B_TRUE } boolean_t;
typedef long id_t;
typedef ulong_t major_t;
typedef ulong_t minor_t;
typedef ushort_t o_mode_t;
typedef short o_dev_t;
typedef ushort_t o_uid_t;
typedef o_uid_t o_gid_t;
typedef short o_nlink_t;
typedef short o_pid_t;
typedef __uint32_t o_ino_t;
typedef unsigned long mode_t;
typedef unsigned long dev_t;
typedef long uid_t;
typedef long gid_t;
typedef unsigned long nlink_t;
typedef long pid_t;
typedef __uint64_t ino_t;
typedef __uint64_t ino64_t;
typedef __int64_t off_t;
typedef __int64_t off64_t;
typedef __scint_t __scoff_t;
typedef __scoff_t scoff_t;
typedef __int64_t blkcnt_t;
typedef __uint64_t fsblkcnt_t;
typedef __uint64_t fsfilcnt_t;
typedef long swblk_t;
typedef unsigned long paddr_t;
typedef int key_t;
typedef unsigned char use_t;
typedef short sysid_t;
typedef short index_t;
typedef unsigned int lock_t;
typedef signed char cpuid_t;
typedef unsigned char pri_t;
typedef __uint64_t accum_t;
typedef __int64_t prid_t;
typedef __int64_t ash_t;
typedef unsigned int size_t;
typedef int ssize_t;
typedef long time_t;
typedef long clock_t;
typedef long wchar_t;
typedef int clockid_t;
typedef int timer_t;
typedef unsigned int useconds_t;
typedef __scunsigned_t bitnum_t;
typedef __scunsigned_t bitlen_t;
typedef int processorid_t;
typedef int toid_t;
typedef long *qaddr_t;
typedef __uint32_t inst_t;
typedef __uint64_t machreg_t;
typedef __uint64_t fpreg_t;
typedef signed char int8_t;
typedef unsigned char uint8_t;
typedef signed short int16_t;
typedef unsigned short uint16_t;
typedef signed int int32_t;
typedef unsigned int uint32_t;
typedef __int64_t int64_t;
typedef __uint64_t uint64_t;
typedef __int64_t intmax_t;
typedef __uint64_t uintmax_t;
typedef signed long int intptr_t;
typedef unsigned long int uintptr_t;
typedef unsigned char u_int8_t;
typedef unsigned short u_int16_t;
typedef __uint32_t u_int32_t;
typedef long hostid_t;
# 1 "/usr/include/sys/bsd_types.h" 1 3
#ident "$Revision: 1.2 $"
typedef struct { int r[1]; } * physadr;
typedef unsigned char unchar;
typedef unsigned char u_char;
typedef unsigned short ushort;
typedef unsigned short u_short;
typedef unsigned int uint;
typedef unsigned int u_int;
typedef unsigned long ulong;
typedef unsigned long u_long;
typedef struct _quad { long val[2]; } quad;
# 1 "/usr/include/sys/select.h" 1 3
#ident "$Revision: 1.10 $"
typedef long fd_mask_t;
typedef unsigned long ufd_mask_t;
typedef struct fd_set {
fd_mask_t fds_bits[((( 1024 )+(( (int)(sizeof(fd_mask_t) * 8 ) )-1))/( (int)(sizeof(fd_mask_t) * 8 ) )) ];
} fd_set;
# 1 "/usr/include/string.h" 1 3
#ident "$Revision: 1.36 $"
# 48 "/usr/include/string.h" 3
extern void *memcpy(void *, const void *, size_t);
extern void *memmove(void *, const void *, size_t);
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 void *memccpy(void *, const void *, int, size_t);
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 size_t strxfrm(char *, const char *, size_t);
extern void *memchr(const void *, int, size_t);
extern char *strchr(const char *, int);
extern size_t strcspn(const char *, const char *);
#pragma int_to_unsigned strcspn
extern char *strpbrk(const char *, const char *);
extern char *strrchr(const char *, int);
extern size_t strspn(const char *, const char *);
#pragma int_to_unsigned strspn
extern char *strstr(const char *, const char *);
extern char *strtok(char *, const char *);
extern void *memset(void *, int, size_t);
extern char *strerror(int);
extern size_t strlen(const char *);
#pragma int_to_unsigned strlen
extern int ffs(int);
extern int strcasecmp(const char *, const char *);
extern int strncasecmp(const char *, const char *, size_t);
extern char *strdup(const char *);
extern char *strtok_r(char *, const char *, char **);
# 111 "/usr/include/string.h" 3
# 70 "/usr/include/sys/select.h" 2 3
typedef long fd_mask;
# 44 "/usr/include/sys/bsd_types.h" 2 3
# 335 "/usr/include/sys/types.h" 2 3
typedef __uint64_t k_sigset_t;
# 446 "/usr/include/sys/types.h" 3
# 15 "/usr/include/strings.h" 2 3
extern int bcmp(const void *, const void *, size_t);
extern void bcopy(const void *, void *, size_t);
extern void bzero(void *, size_t);
extern char *index(const char *, int);
extern char *rindex(const char *, int);
# 2 "tst.c" 2
int main(int argc, char **argv)
{
int buffer[1024], buffer1[1024];
memcpy(buffer, buffer1, 500);
}
gcc -v --save-temps -mips3 -mcpu=r4000 tst.c 2>&1 | tee gcc.log
Reading specs from /usr/local/artcom/egcs-19990718/lib/gcc-lib/mips-sgi-irix6.2/2.95/specs
gcc version 2.95 19990718 (prerelease)
/usr/local/artcom/egcs-19990718/lib/gcc-lib/mips-sgi-irix6.2/2.95/cpp -lang-c -v -D__GNUC__=2 -D__GNUC_MINOR__=95 -Dunix -Dmips -Dsgi -Dhost_mips -DMIPSEB -D_MIPSEB -DSYSTYPE_SVR4 -D_LONGLONG -D_SVR4_SOURCE -D_MODERN_C -D__DSO__ -D__unix__ -D__mips__ -D__sgi__ -D__host_mips__ -D__MIPSEB__ -D_MIPSEB -D__SYSTYPE_SVR4__ -D_LONGLONG -D_SVR4_SOURCE -D_MODERN_C -D__DSO__ -D__unix -D__mips -D__sgi -D__host_mips -D__MIPSEB -D__SYSTYPE_SVR4 -Asystem(unix) -Asystem(svr4) -Acpu(mips) -Amachine(sgi) -D__CHAR_UNSIGNED__ -D__LANGUAGE_C -D_LANGUAGE_C -DLANGUAGE_C -D__SIZE_TYPE__=unsigned int -D__PTRDIFF_TYPE__=int -U__mips -D__mips=3 -D__mips64 -D__EXTENSIONS__ -D_SGI_SOURCE -D_MIPS_FPSET=32 -D_MIPS_ISA=_MIPS_ISA_MIPS3 -D_ABIN32=2 -D_MIPS_SIM=_ABIN32 -D_MIPS_SZINT=32 -D_MIPS_SZLONG=32 -D_MIPS_SZPTR=32 -D_COMPILER_VERSION=601 -D__mips64 tst.c tst.i
GNU CPP version 2.95 19990718 (prerelease) [AL 1.1, MM 40] SGI running IRIX 6.x
#include "..." search starts here:
#include <...> search starts here:
/usr/local/include
/usr/local/artcom/egcs-19990718/lib/gcc-lib/mips-sgi-irix6.2/2.95/../../../../mips-sgi-irix6.2/include
/usr/local/artcom/egcs-19990718/lib/gcc-lib/mips-sgi-irix6.2/2.95/include
/usr/include
End of search list.
The following default directories have been omitted from the search path:
/usr/local/artcom/egcs-19990718/lib/gcc-lib/mips-sgi-irix6.2/2.95/../../../../include/g++-3
End of omitted list.
/usr/local/artcom/egcs-19990718/lib/gcc-lib/mips-sgi-irix6.2/2.95/cc1 tst.i -mfp64 -mgp64 -quiet -dumpbase tst.c -mips3 -mcpu=r4000 -version -o tst.s
GNU C version 2.95 19990718 (prerelease) (mips-sgi-irix6.2) compiled by GNU C version 2.95 19990718 (prerelease).
In file included from /usr/include/sys/select.h:70,
from /usr/include/sys/bsd_types.h:44,
from /usr/include/sys/types.h:335,
from /usr/include/strings.h:15,
from tst.c:2:
/usr/include/string.h:57: warning: conflicting types for built-in function `memcpy'
/usr/include/string.h:64: warning: conflicting types for built-in function `memcmp'
/usr/include/string.h:79: warning: conflicting types for built-in function `memset'
/usr/include/string.h:81: warning: conflicting types for built-in function `strlen'
/usr/bin/as -mips3 -g0 -nocpp -show -G 0 -w -n32 -o tst.o tst.s
/usr/bin/../lib32/cmplrs/as -mips3 -g0 -nocpp -show -G 0 -w -n32 -o tst.o tst.s
/usr/lib32/cmplrs/asm -EB -pic2 -elf -mips3 -n32 -g0 -G0 -w -O0 -t5_ll_sc_bug tst.s -o tst.o
/usr/local/artcom/egcs-19990718/lib/gcc-lib/mips-sgi-irix6.2/2.95/collect2 -mips3 -call_shared -no_unresolved -init __do_global_ctors -fini __do_global_dtors -_SYSTYPE_SVR4 -woff 131 -n32 /usr/lib32/mips3/crt1.o /usr/local/artcom/egcs-19990718/lib/gcc-lib/mips-sgi-irix6.2/2.95/crtbegin.o -L/usr/local/artcom/egcs-19990718/lib/gcc-lib/mips-sgi-irix6.2/2.95 -L/usr/bin -L/usr/local/artcom/egcs-19990718/lib tst.o -dont_warn_unused -lgcc -warn_unused -L/usr/lib32/mips3 -L/usr/lib32 -dont_warn_unused -lc -warn_unused -dont_warn_unused -lgcc -warn_unused /usr/local/artcom/egcs-19990718/lib/gcc-lib/mips-sgi-irix6.2/2.95/crtend.o /usr/lib32/mips3/crtn.o