diff options
author | Per Bothner <per@bothner.com> | 1996-02-07 05:43:04 +0000 |
---|---|---|
committer | Per Bothner <per@bothner.com> | 1996-02-07 05:43:04 +0000 |
commit | ec49fc987c60ae5d79d45992f3e196904056503c (patch) | |
tree | f29b3991affda093a75428397af1c8772f5f0e67 /gdb/stabsread.c | |
parent | fe16107dfa238202a8735bd709c694cd781d50f8 (diff) | |
download | gdb-ec49fc987c60ae5d79d45992f3e196904056503c.zip gdb-ec49fc987c60ae5d79d45992f3e196904056503c.tar.gz gdb-ec49fc987c60ae5d79d45992f3e196904056503c.tar.bz2 |
* stabsread.c (read_range_type): If !self-subrange and language
is Chill, assume a true range. If a true_range is a sub_subrange,
use builtin_type_int for index_type.
This is for PR chill/8894.
Diffstat (limited to 'gdb/stabsread.c')
-rw-r--r-- | gdb/stabsread.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/gdb/stabsread.c b/gdb/stabsread.c index 988c75c..541e886 100644 --- a/gdb/stabsread.c +++ b/gdb/stabsread.c @@ -3512,7 +3512,7 @@ read_range_type (pp, typenums, objfile) return init_type (TYPE_CODE_INT, 1, 0, NULL, objfile); else if (current_symbol && SYMBOL_LANGUAGE (current_symbol) == language_chill - && SYMBOL_LINE (current_symbol) > 0) + && !self_subrange) goto handle_true_range; /* We used to do this only for subrange of self or subrange of int. */ @@ -3552,13 +3552,10 @@ read_range_type (pp, typenums, objfile) return a real pointer. */ handle_true_range: - /* At this point I don't have the faintest idea how to deal with - a self_subrange type; I'm going to assume that this is used - as an idiom, and that all of them are special cases. So . . . */ if (self_subrange) - return error_type (pp, objfile); - - index_type = *dbx_lookup_type (rangenums); + index_type = builtin_type_int; + else + index_type = *dbx_lookup_type (rangenums); if (index_type == NULL) { /* Does this actually ever happen? Is that why we are worrying |