aboutsummaryrefslogtreecommitdiff
path: root/gdb/stabsread.c
diff options
context:
space:
mode:
authorPer Bothner <per@bothner.com>1993-12-14 04:32:51 +0000
committerPer Bothner <per@bothner.com>1993-12-14 04:32:51 +0000
commite909f287a8340e2fe7a99f6fc1649801ec807768 (patch)
treec63edf815aaacd4fd20ca3cd370799843151bc34 /gdb/stabsread.c
parent1400cdc51d7a0264cea808e46f22a0a35faebac9 (diff)
downloadgdb-e909f287a8340e2fe7a99f6fc1649801ec807768.zip
gdb-e909f287a8340e2fe7a99f6fc1649801ec807768.tar.gz
gdb-e909f287a8340e2fe7a99f6fc1649801ec807768.tar.bz2
Implement support for Chill POWERSETs.
* ch-exp.y (operand_2): Implement 'Element IN PowerSet'. * ch-typeprint.c (chill_type_print_base): Handle POWERSETs. * ch-valprint.c (chill_val_print): Handle TYPE_CODE_SET. * eval.c (evaluate_subexp): Implement BINOP_IN. * expression.h (enum exp_opcode): Added BINOP_IN. * gdbtypes.c (create_set_type), gdbtypes.h: New function. * stabsread.c (read_type): If 'S', create a set type. * valarith.c (value_bit_index, value_in), value.h: New functions, for indexing in SETs.
Diffstat (limited to 'gdb/stabsread.c')
-rw-r--r--gdb/stabsread.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gdb/stabsread.c b/gdb/stabsread.c
index 3203cbf..a0c9672 100644
--- a/gdb/stabsread.c
+++ b/gdb/stabsread.c
@@ -1568,6 +1568,13 @@ read_type (pp, objfile)
type = read_array_type (pp, type, objfile);
break;
+ case 'S':
+ type1 = read_type (pp, objfile);
+ type = create_set_type ((struct type*) NULL, type1);
+ if (typenums[0] != -1)
+ *dbx_lookup_type (typenums) = type;
+ break;
+
default:
--*pp; /* Go back to the symbol in error */
/* Particularly important if it was \0! */