gnats-prs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

gnats/165: gcc 2.95.2 preprocessor bug with -O options


From: jdmorgen
Subject: gnats/165: gcc 2.95.2 preprocessor bug with -O options
Date: 10 Mar 2001 01:29:57 -0000

>Number:         165
>Category:       gnats
>Synopsis:       gcc 2.95.2 preprocessor bug with -O options
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Mar 09 17:34:00 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     J. David Morgenthaler
>Release:        gcc-2.95.2
>Organization:
>Environment:
Linux 2.2.12-20smp #1 SMP Mon Sep 27 10:34:45 EDT 1999 i686 unknown
>Description:
preprocessor error for gcc using -O, -O2... Does not occur
with g++ or without -O 
Sample section of bad.i file:



# 1 "bad.c" 2


void bad()
{
  if(( __extension__    ({ size_t __s1_len, __s2_len;   (__builtin_constant_p ( 
 "mystr" ) && __builtin_constant_p (                 
#if defined(SOMETHING)
               "yourstr" )      && (__s1_len = strlen (  "mystr" ), __s2_len = 
strlen (                  #if defined(SOMETHING)                "yourstr" ),    
 (! ((size_t)(const void *)((   "mystr"  ) + 1) - (size_t)(const void *)(   
"mystr"  ) == 1)  || __s1_len >= 4)  && (! ((size_t)(const void *)((            
       #if defined(SOMETHING)               "yourstr"  ) + 1) - (size_t)(const 
void *)(                   #if defined(SOMETHING)            "yourstr"  ) == 1) 
 || __s2_len >= 4))   ? memcmp ((__const char *) (  "mystr" ), (__const char *) 
(                  #if defined(SOMETHING)            "yourstr" ),     (__s1_len 
< __s2_len ? __s1_len : __s2_len) + 1)        : (__builtin_constant_p ( 
>How-To-Repeat:
gcc -O
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="bad.c"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="bad.c"

I2luY2x1ZGUgPHN0cmluZy5oPgoKdm9pZCBiYWQoKQp7CiAgaWYoKCBzdHJjbXAoICJteXN0ciIs
ICAgICAgICAgICAgICAgIAojaWYgZGVmaW5lZChTT01FVEhJTkcpCgkgICAgICAgInlvdXJzdHIi
KSAKI2Vsc2UgCiAgICAgICAgICAgICAgICIiKSAKI2VuZGlmICAKCSE9IDAgKSApIAogICAgIDsK
fQo=


reply via email to

[Prev in Thread] Current Thread [Next in Thread]