aboutsummaryrefslogtreecommitdiff
path: root/gdb/stabsread.c
diff options
context:
space:
mode:
authorJohn Gilmore <gnu@cygnus>1992-09-22 02:33:11 +0000
committerJohn Gilmore <gnu@cygnus>1992-09-22 02:33:11 +0000
commit6b50c5c2428aa5a204cd4a28028f3853620fe336 (patch)
treeace5007a445654c733489d96cd831486617a365d /gdb/stabsread.c
parent22387683722715853f939e01ebcc3970af8cf383 (diff)
downloadgdb-6b50c5c2428aa5a204cd4a28028f3853620fe336.zip
gdb-6b50c5c2428aa5a204cd4a28028f3853620fe336.tar.gz
gdb-6b50c5c2428aa5a204cd4a28028f3853620fe336.tar.bz2
* infrun.c (_initialize_infrun): Alias `i handle' == `i signals'.
* stabsread.c (read_struct_type): Simplify complicated expression for dumb DECstation compiler.
Diffstat (limited to 'gdb/stabsread.c')
-rw-r--r--gdb/stabsread.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/gdb/stabsread.c b/gdb/stabsread.c
index 832d9c3..6bf29f4 100644
--- a/gdb/stabsread.c
+++ b/gdb/stabsread.c
@@ -1327,8 +1327,21 @@ read_struct_type (pp, type, objfile)
ALLOCATE_CPLUS_STRUCT_TYPE(type);
n_baseclasses = read_number (pp, ',');
+ /* Some stupid compilers have trouble with the following, so break
+ it up into simpler expressions. */
+#if 0
TYPE_FIELD_VIRTUAL_BITS (type) = (B_TYPE *)
TYPE_ALLOC (type, B_BYTES (n_baseclasses));
+#else
+ {
+ int num_bytes = B_BYTES (n_baseclasses);
+ char *pointer;
+
+ pointer = (char *) TYPE_ALLOC (type, num_bytes);
+ TYPE_FIELD_VIRTUAL_BITS (type) = (B_TYPE *) pointer;
+ }
+#endif /* 0 */
+
B_CLRALL (TYPE_FIELD_VIRTUAL_BITS (type), n_baseclasses);
for (i = 0; i < n_baseclasses; i++)