This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/12364] New: "internal compiler error: Bus Error" in gcc 3.3.1 on Solaris 8
- From: "gres at cd dot chalmers dot se" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 22 Sep 2003 07:43:44 -0000
- Subject: [Bug c/12364] New: "internal compiler error: Bus Error" in gcc 3.3.1 on Solaris 8
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12364
Summary: "internal compiler error: Bus Error" in gcc 3.3.1 on
Solaris 8
Product: gcc
Version: 3.3.1
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: gres at cd dot chalmers dot se
CC: gcc-bugs at gcc dot gnu dot org
* Host system: sparc-sun-solaris2.8
* Target system: sparc-sun-solaris2.8
* gcc version:
Reading specs from /app/gcc/3.3.1/lib/gcc-lib/sparc-sun-
solaris2.8/3.3.1/specs
Configured with: ../gcc-3.3.1/configure --prefix=/app/gcc/3.3.1 --with-gnu-
as --with-as=/app/binutils/2.13.2.1/bin/as --with-gnu-ld --with-
ld=/app/binutils/2.13.2.1/bin/ld
Thread model: posix
gcc version 3.3.1
* Compiler output:
syntaxtree.c: In function `make_tips':
syntaxtree.c:23: warning: assignment makes pointer from integer without a
cast
syntaxtree.c:21: internal compiler error: Bus Error
* How to reproduce:
gcc apa.i
* Preprocessed file "apa.i"
# 1 "syntaxtree.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "syntaxtree.c"
# 1 "syntaxtree.h" 1
# 9 "syntaxtree.h"
# 1 "list.h" 1
# 11 "list.h"
struct list
{
struct listitem *start, *end;
int nr;
struct listitem *iterator;
char *fun;
int line;
};
typedef struct list *list;
struct listitem
{
void *data;
struct listitem *n;
};
# 10 "syntaxtree.h" 2
struct yyltype {int i; };
struct tips {
char *tips_kind;
int prodcnt;
struct yyltype yyl;
char *filename;
int type;
};
struct tips *make_tips(int type);
typedef enum {type_ERROR = 0, type_SCALAR, type_STRUCT, type_ARRAY} type_type;
struct Type {
char *tips_kind;
int prodcnt;
struct yyltype yyl;
char *filename;
type_type type;
int size;
int alignment;
char *name;
};
struct Type *make_Type(char *name);
struct type_scalar {
char *tips_kind;
int prodcnt;
struct yyltype yyl;
char *filename;
type_type type;
int size;
int alignment;
char *name;
};
struct type_scalar *make_type_scalar(char *name);
struct type_struct {
char *tips_kind;
int prodcnt;
struct yyltype yyl;
char *filename;
type_type type;
int size;
int alignment;
int tailpad;
int tp_warning;
char *name;
list members;
};
struct type_struct *make_type_struct(char *name, list members);
struct type_array {
char *tips_kind;
int prodcnt;
struct yyltype yyl;
char *filename;
type_type type;
int size;
int alignment;
int tailpad;
struct type *subtype;
};
struct type_array *make_type_array(struct type *subtype);
struct declaration {
char *tips_kind;
int prodcnt;
struct yyltype yyl;
char *filename;
struct Type *type;
char *name;
};
struct declaration *make_declaration(struct Type *type, char *name);
# 2 "syntaxtree.c" 2
int prodcnt=0;
# 1 "/usr/include/stdlib.h" 1 3 4
# 16 "/usr/include/stdlib.h" 3 4
#pragma ident "@(#)stdlib.h 1.47 99/11/03 SMI"
# 1 "/usr/include/iso/stdlib_iso.h" 1 3 4
# 28 "/usr/include/iso/stdlib_iso.h" 3 4
#pragma ident "@(#)stdlib_iso.h 1.2 99/12/21 SMI"
# 1 "/usr/include/sys/feature_tests.h" 1 3 4
# 13 "/usr/include/sys/feature_tests.h" 3 4
#pragma ident "@(#)feature_tests.h 1.18 99/07/26 SMI"
# 1 "/usr/include/sys/isa_defs.h" 1 3 4
# 9 "/usr/include/sys/isa_defs.h" 3 4
#pragma ident "@(#)isa_defs.h 1.20 99/05/04 SMI"
# 16 "/usr/include/sys/feature_tests.h" 2 3 4
# 31 "/usr/include/iso/stdlib_iso.h" 2 3 4
extern unsigned char __ctype[];
# 48 "/usr/include/iso/stdlib_iso.h" 3 4
typedef struct {
int quot;
int rem;
} div_t;
typedef struct {
long quot;
long rem;
} ldiv_t;
typedef unsigned int size_t;
# 84 "/usr/include/iso/stdlib_iso.h" 3 4
typedef long wchar_t;
extern void abort(void);
extern int abs(int);
extern int atexit(void (*)(void));
extern double atof(const char *);
extern int atoi(const char *);
extern long int atol(const char *);
extern void *bsearch(const void *, const void *, size_t, size_t,
int (*)(const void *, const void *));
extern void *calloc(size_t, size_t);
extern div_t div(int, int);
extern void exit(int);
extern void free(void *);
extern char *getenv(const char *);
extern long int labs(long);
extern ldiv_t ldiv(long, long);
extern void *malloc(size_t);
extern int mblen(const char *, size_t);
extern size_t mbstowcs(wchar_t *, const char *, size_t);
extern int mbtowc(wchar_t *, const char *, size_t);
extern void qsort(void *, size_t, size_t,
int (*)(const void *, const void *));
extern int rand(void);
extern void *realloc(void *, size_t);
extern void srand(unsigned int);
extern double strtod(const char *, char **);
extern long int strtol(const char *, char **, int);
extern unsigned long int strtoul(const char *, char **, int);
extern int system(const char *);
extern int wctomb(char *, wchar_t);
extern size_t wcstombs(char *, const wchar_t *, size_t);
# 19 "/usr/include/stdlib.h" 2 3 4
# 68 "/usr/include/stdlib.h" 3 4
typedef struct {
long long quot;
long long rem;
} lldiv_t;
typedef long uid_t;
# 112 "/usr/include/stdlib.h" 3 4
extern void _exithandle(void);
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 unsigned short *seed48(unsigned short *);
extern void srand48(long);
extern int putenv(char *);
extern void setkey(const char *);
# 140 "/usr/include/stdlib.h" 3 4
typedef int ssize_t;
extern void swab(const char *, char *, ssize_t);
extern int mkstemp(char *);
extern int mkstemp64(char *);
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 *, size_t);
extern char *l64a(long);
extern char *mktemp(char *);
extern char *ptsname(int);
extern long random(void);
extern char *realpath(const char *, char *);
extern char *setstate(const 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 *qecvt(long double, int, int *, int *);
extern char *qfcvt(long double, int, int *, int *);
extern char *qgcvt(long double, int, char *);
extern char *getcwd(char *, size_t);
extern const char *getexecname(void);
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 char *getpassphrase(const char *);
extern int getpw(uid_t, char *);
extern int isatty(int);
extern void *memalign(size_t, size_t);
extern char *ttyname(int);
extern long long atoll(const char *);
extern long long llabs(long long);
extern lldiv_t lldiv(long long, long long);
extern char *lltostr(long long, char *);
extern long long strtoll(const char *, char **, int);
extern unsigned long long strtoull(const char *, char **, int);
extern char *ulltostr(unsigned long long, char *);
# 11 "syntaxtree.c" 2
# 1 "y.tab.h" 1
# 12 "syntaxtree.c" 2
struct tips *make_tips(int type)
{
struct tips *__t = calloc(1, sizeof(struct tips));
__t->tips_kind = "tips";
prodcnt++;
__t->prodcnt = prodcnt;
__t->filename = filename();
__t->type=type;
return __t;
}
struct Type *make_Type(char *name)
{
struct Type *__t = calloc(1, sizeof(struct Type));
__t->tips_kind = "Type";
prodcnt++;
__t->prodcnt = prodcnt;
__t->filename = filename();
__t->type=type_ERROR;
__t->size=0;
__t->alignment=0;
__t->name=name;
return __t;
}
struct type_scalar *make_type_scalar(char *name)
{
struct type_scalar *__t = calloc(1, sizeof(struct type_scalar));
__t->tips_kind = "type_scalar";
prodcnt++;
__t->prodcnt = prodcnt;
__t->filename = filename();
__t->type=type_SCALAR;
__t->size=0;
__t->alignment=0;
__t->name=name;
return __t;
}
struct type_struct *make_type_struct(char *name, list members)
{
struct type_struct *__t = calloc(1, sizeof(struct type_struct));
__t->tips_kind = "type_struct";
prodcnt++;
__t->prodcnt = prodcnt;
__t->filename = filename();
__t->type=type_STRUCT;
__t->size=0;
__t->alignment=0;
__t->tailpad=0;
__t->tp_warning=0;
__t->name=name;
__t->members=members;
return __t;
}
struct type_array *make_type_array(struct type *subtype)
{
struct type_array *__t = calloc(1, sizeof(struct type_array));
__t->tips_kind = "type_array";
prodcnt++;
__t->prodcnt = prodcnt;
__t->filename = filename();
__t->type=type_ARRAY;
__t->size=0;
__t->alignment=0;
__t->tailpad=0;
__t->subtype=subtype;
return __t;
}
struct type_struct *make_type_struct(char *name, list members)
{
struct type_struct *__t = calloc(1, sizeof(struct type_struct));
__t->tips_kind = "type_struct";
prodcnt++;
__t->prodcnt = prodcnt;
__t->filename = filename();
__t->type=type_STRUCT;
__t->size=0;
__t->alignment=0;
__t->tailpad=0;
__t->tp_warning=0;
__t->name=name;
__t->members=members;
return __t;
}
struct type_array *make_type_array(struct type *subtype)
{
struct type_array *__t = calloc(1, sizeof(struct type_array));
__t->tips_kind = "type_array";
prodcnt++;
__t->prodcnt = prodcnt;
__t->filename = filename();
__t->type=type_ARRAY;
__t->size=0;
__t->alignment=0;
__t->tailpad=0;
__t->subtype=subtype;
return __t;
}
struct declaration *make_declaration(struct Type *type, char *name)
{
struct declaration *__t = calloc(1, sizeof(struct declaration));
__t->tips_kind = "declaration";
prodcnt++;
__t->prodcnt = prodcnt;
__t->filename = filename();
__t->type=type;
__t->name=name;
return __t;
}