This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] PR libstdc++/13045 / C++ demangler, floating values and function pointer type return type postfix fix.


Ian Lance Taylor <ian@wasabisystems.com> writes:

[...]

| >    5.1.5 Type encodings
| > 
| >    Note that the expression is mangled without constant folding or other
| >    simplification, and without parentheses, which are implicit in the
| >    prefix representation.  Except for the parentheses, therefore, it
| >    represents the source token stream. (C++ Standard reference 14.5.5.1
| >    p. 5.)
| 
| If the expression represents the source token stream, then are these
| meant to be equivalent or different:
|    A<1+(int)1.0>
|    A<1+(int)1.00>
| ?

In another words, does the Standard say that the tokens 1.0 and 1.00
are different?  

[...]

| In other words, if we don't have to normalize expressions, then why do
| we have to normalize floating point constants?  As I said above, it
| seems to me that these reduce to the same problem.

normalizing floating literals helps escape the problems of
representations on different targets.

-- Gaby


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]