case 'k': /* 'const' modifier */case 'B': /* 'volatile' modifier *//* just kinda ignore the modifier, I guess -gmt */if (DEBUG_PTS_ReadTypedef(ptd, NULL, &ref_dt) == -1) return -1;new_dt = DEBUG_NewDataType(DEBUG_GetType(ref_dt), NULL);/* I don't get this.. but I figure this is kind of like "r"so I cut and pasted from there ... -gmt */assert(!*DEBUG_FileSubNr2StabEnum(filenr1, subnr1));*DEBUG_FileSubNr2StabEnum(filenr1, subnr1) = new_dt; break; case '(': ptd->ptr--;
this should rather be: + break; + case 'k': /* 'const' modifier */ + case 'B': /* 'volatile' modifier */ + /* just kinda ignore the modifier, I guess -gmt */ + if (DEBUG_PTS_ReadTypedef(ptd, NULL, &new_dt) == -1) return -1;
patch is untested anyway (gcc 2.95 doesn't emit those, even in -g3 mode) however, it's strange that your gdb like debuggers crash in -gstabs2 mode IMO, we should keep (as of today) wine in -gstabs2 mode and not jump to level 3
A+