X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fstabsread.c;h=541e886474b83bda4cb3ec1ef45a79da9ee47b5e;hb=ec49fc987c60ae5d79d45992f3e196904056503c;hp=988c75cb178999639394259b38cc04b9e944f4db;hpb=fe16107dfa238202a8735bd709c694cd781d50f8;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/stabsread.c b/gdb/stabsread.c index 988c75cb17..541e886474 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