diff options
author | bkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-11-23 12:12:03 +0000 |
---|---|---|
committer | bkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-11-23 12:12:03 +0000 |
commit | d54546fb2267e65b1df17920501b21246686b00a (patch) | |
tree | 2c54115e89fe35e48c49d74c3471f70a90ca0553 | |
parent | 9bc4ac9ea8413715b24c698d50b8012bbe9d0d66 (diff) | |
download | ppe42-gcc-d54546fb2267e65b1df17920501b21246686b00a.tar.gz ppe42-gcc-d54546fb2267e65b1df17920501b21246686b00a.zip |
�
1998-11-16 Benjamin Kosnik <bkoz@haight.constant.com>
* cplus-dem.c (demangle_fund_type): Add demangling for C9x types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23799 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | libiberty/ChangeLog | 4 | ||||
-rw-r--r-- | libiberty/cplus-dem.c | 24 |
2 files changed, 28 insertions, 0 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index aca683defa1..63cfef347f0 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,7 @@ +1998-11-16 Benjamin Kosnik <bkoz@haight.constant.com> + + * cplus-dem.c (demangle_fund_type): Add demangling for C9x types. + Thu Nov 19 22:15:50 1998 Jeffrey A Law (law@cygnus.com) * mpw.c (mpw_access): Add missing parens. diff --git a/libiberty/cplus-dem.c b/libiberty/cplus-dem.c index 5ccf92ffa7b..05026c1da4e 100644 --- a/libiberty/cplus-dem.c +++ b/libiberty/cplus-dem.c @@ -2883,6 +2883,8 @@ demangle_fund_type (work, mangled, result) { int done = 0; int success = 1; + char buf[10]; + int dec = 0; string btype; type_kind_t tk = tk_integral; @@ -3000,6 +3002,28 @@ demangle_fund_type (work, mangled, result) success = 0; break; } + case 'I': + ++(*mangled); + if (**mangled == '_') + { + int i; + ++(*mangled); + for (i = 0; **mangled != '_'; ++(*mangled), ++i) + buf[i] = **mangled; + buf[i] = '\0'; + ++(*mangled); + } + else + { + strncpy (buf, *mangled, 2); + *mangled += 2; + } + sscanf (buf, "%x", &dec); + sprintf (buf, "int%i_t", dec); + APPEND_BLANK (result); + string_append (result, buf); + break; + /* fall through */ /* An explicit type, such as "6mytype" or "7integer" */ case '0': |