From 59d97f7fd7e96e74d627307834c1e69773cfa814 Mon Sep 17 00:00:00 2001 From: Stu Grossman Date: Tue, 7 Jan 1992 21:16:25 +0000 Subject: [PATCH] buildsym.c (cleanup_undefined_types): Add support for enums. This fixes the 'GDB internal error. cleanup_undefined_types with bad type' problem. --- gdb/buildsym.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gdb/buildsym.c b/gdb/buildsym.c index 0a5aa5d4280..37baacd094d 100644 --- a/gdb/buildsym.c +++ b/gdb/buildsym.c @@ -1424,6 +1424,7 @@ cleanup_undefined_types () case TYPE_CODE_STRUCT: case TYPE_CODE_UNION: + case TYPE_CODE_ENUM: { /* Reasonable test to see if it's been defined since. */ if (TYPE_NFIELDS (*type) == 0) @@ -1437,6 +1438,8 @@ cleanup_undefined_types () typename += 7; if (!strncmp (typename, "union ", 6)) typename += 6; + if (!strncmp (typename, "enum ", 5)) + typename += 5; for (ppt = file_symbols; ppt; ppt = ppt->next) for (i = 0; i < ppt->nsyms; i++) @@ -1481,7 +1484,8 @@ cleanup_undefined_types () default: badtype: - error ("GDB internal error. cleanup_undefined_types with bad type."); + error ("GDB internal error. cleanup_undefined_types with bad\ + type %d.", TYPE_CODE (*type)); break; } } -- 2.30.2