From: Nick Clifton Date: Tue, 30 Sep 2008 12:19:51 +0000 (+0000) Subject: PR 6922 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=42b722c134bdc0fa404020194874b63b6741e4aa;p=binutils-gdb.git PR 6922 * stabs.c (parse_stab_sun_builtin_type): Parse, but ignore SUN's 'b' and 'v' extensions. --- diff --git a/binutils/ChangeLog b/binutils/ChangeLog index ee71f12f32a..c550f85cee6 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,9 @@ +2008-09-30 Andrew Paprocki + + PR 6922 + * stabs.c (parse_stab_sun_builtin_type): Parse, but ignore SUN's + 'b' and 'v' extensions. + 2008-09-29 Peter O'Gorman Steve Ellcey diff --git a/binutils/stabs.c b/binutils/stabs.c index ea0a61e4118..c2c7c3a2f51 100644 --- a/binutils/stabs.c +++ b/binutils/stabs.c @@ -1,6 +1,6 @@ /* stabs.c -- Parse stabs debugging information Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, - 2006, 2007 Free Software Foundation, Inc. + 2006, 2007, 2008 Free Software Foundation, Inc. Written by Ian Lance Taylor . This file is part of GNU Binutils. @@ -1837,11 +1837,13 @@ parse_stab_sun_builtin_type (void *dhandle, const char **pp) } ++*pp; - /* For some odd reason, all forms of char put a c here. This is strange - because no other type has this honor. We can safely ignore this because - we actually determine 'char'acterness by the number of bits specified in - the descriptor. */ - if (**pp == 'c') + /* OpenSolaris source code indicates that one of "cbv" characters + can come next and specify the intrinsic 'iformat' encoding. + 'c' is character encoding, 'b' is boolean encoding, and 'v' is + varargs encoding. This field can be safely ignored because + the type of the field is determined from the bitwidth extracted + below. */ + if (**pp == 'c' || **pp == 'b' || **pp == 'v') ++*pp; /* The first number appears to be the number of bytes occupied