diff options
author | Jason Merrill <jason@redhat.com> | 2008-12-10 17:11:44 -0500 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2008-12-10 17:11:44 -0500 |
commit | 07523e7c080b44354836524f09f1c9a11f2a1679 (patch) | |
tree | 262e40a0acb4385f32e278194a774e3b2f7f60a0 /include/demangle.h | |
parent | 615cb001bb90ef2acb21c011918b456c59ddb5de (diff) | |
download | gcc-07523e7c080b44354836524f09f1c9a11f2a1679.zip gcc-07523e7c080b44354836524f09f1c9a11f2a1679.tar.gz gcc-07523e7c080b44354836524f09f1c9a11f2a1679.tar.bz2 |
re PR c++/35319 (ICE throwing fixed-point types)
PR c++/35319
* mangle.c (write_builtin_type): Add mangling for decimal floating
point and fixed point types.
(write_type): Pass FIXED_POINT_TYPE along.
* cp-demangle.c (cplus_demangle_type): Support fixed-point types.
(d_print_comp, d_dump): Likewise.
From-SVN: r142661
Diffstat (limited to 'include/demangle.h')
-rw-r--r-- | include/demangle.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/include/demangle.h b/include/demangle.h index 0ea639d..28c69f5 100644 --- a/include/demangle.h +++ b/include/demangle.h @@ -319,6 +319,8 @@ enum demangle_component_type and the right subtree is the member type. CV-qualifiers appear on the latter. */ DEMANGLE_COMPONENT_PTRMEM_TYPE, + /* A fixed-point type. */ + DEMANGLE_COMPONENT_FIXED_TYPE, /* An argument list. The left subtree is the current argument, and the right subtree is either NULL or another ARGLIST node. */ DEMANGLE_COMPONENT_ARGLIST, @@ -419,6 +421,17 @@ struct demangle_component struct demangle_component *name; } s_extended_operator; + /* For DEMANGLE_COMPONENT_FIXED_TYPE. */ + struct + { + /* The length, indicated by a C integer type name. */ + struct demangle_component *length; + /* _Accum or _Fract? */ + short accum; + /* Saturating or not? */ + short sat; + } s_fixed; + /* For DEMANGLE_COMPONENT_CTOR. */ struct { |