Bug 733265 - Decimal float constant suffixes are incorrectly separated
Summary: Decimal float constant suffixes are incorrectly separated
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: indent
Version: 6.2
Hardware: x86_64
OS: Linux
high
high
Target Milestone: rc
: ---
Assignee: Petr Pisar
QA Contact: qe-baseos-tools
URL: https://lists.gnu.org/archive/html/bu...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-08-25 10:00 UTC by Petr Pisar
Modified: 2012-06-20 12:00 UTC (History)
4 users (show)

Fixed In Version: indent-2.2.10-6.el6
Doc Type: Bug Fix
Doc Text:
Cause Running indent on code with decimal float constants (e.g. `double f = 3.0DF;'). Consequence The suffix become separated from the number by a space resulting to invalid C code. Fix indent tool has been modified to understand decimal float suffixes as proposed by N1312 draft of ISO/IEC WDTR24732. Result Indent does not break code with decimal float constants anymore.
Clone Of: 733051
Environment:
Last Closed: 2012-06-20 12:00:29 UTC
Target Upstream Version:


Attachments (Terms of Use)
Proposed fix (3.15 KB, patch)
2011-08-25 10:02 UTC, Petr Pisar
no flags Details | Diff
Fix ported back to 2.2.10 (3.09 KB, patch)
2012-01-04 13:03 UTC, Petr Pisar
no flags Details | Diff


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2012:0753 normal SHIPPED_LIVE indent bug fix update 2012-06-19 19:31:11 UTC

Description Petr Pisar 2011-08-25 10:00:32 UTC
+++ This bug was initially created as a clone of Bug #733051 +++

Description of problem:
If you have a constant suffix, indent will put a space between the number and the suffix, causing a compilation syntax error.

Example:
double f = 3.0DF;


Version-Release number of selected component (if applicable):
indent-2.2.11-1.fc14.x86_64

How reproducible:

Indent the following, and notice the extra space inserted:

double f = 3.0DF;

 
Actual results:

double f = 3.0 DF;

Expected results:

double f = 3.0DF;

--- Additional comment from ppisar@redhat.com on 2011-08-25 08:21:52 GMT ---

The "DF" suffix is non-standard extension supported by GCC or XLC to utilize decimal float representations on some PowerPC architectures.

--- Additional comment from ppisar@redhat.com on 2011-08-25 08:25:16 GMT ---

Known decimal float suffixes are "DF", "DD", "DL" and their lower-cased variants.
------

RHEL-6 affected too.

Comment 1 Petr Pisar 2011-08-25 10:02:02 UTC
Created attachment 519800 [details]
Proposed fix

Comment 4 Petr Pisar 2012-01-04 13:03:03 UTC
Created attachment 550680 [details]
Fix ported back to 2.2.10

Comment 6 Petr Pisar 2012-01-04 13:28:23 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Cause
    Running indent on code with decimal float constants (e.g.
    `double f = 3.0DF;').
Consequence
    The suffix become separated from the number by a space
    resulting to invalid C code.
Fix
    indent tool has been modified to understand decimal float
    suffixes as proposed by N1312 draft of ISO/IEC WDTR24732.
Result
    Indent does not break code with decimal float constants
    anymore.

Comment 10 errata-xmlrpc 2012-06-20 12:00:29 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2012-0753.html


Note You need to log in before you can comment on or make changes to this bug.