new fixinclude problem on HP-UX

Bruce Korb bkorb@sco.COM
Tue Mar 28 08:18:00 GMT 2000


Your remailer is awfully picky.
Netscape is kind enough to fix my address for me
by automatically capitalizing "GCC".  I have to poke
at it several times before it lets me lower case it.  :-(.
I long for the days of simple email that just worked.

-------- Original Message --------
Subject: failure notice
Date: 28 Mar 2000 16:02:38 -0000
From: MAILER-DAEMON@sourceware.cygnus.com
To: bkorb@sco.com

Hi. This is the qmail-send program at sourceware.cygnus.com.
I'm afraid I wasn't able to deliver your message to the following addresses.
This is a permanent error; I've given up. Sorry it didn't work out.

[[ not sorry enough ]]-:

<GCC-bugs@gcc.gnu.org>:
 
  Mail note rejected:  List address must be in To: or Cc: headers.
 

--- Below this line is a copy of the message.

To: marcof@thyron.com
CC: GCC-bugs@gcc.gnu.org
Subject: RE: new fixinclude problem on HP-UX


> # if !defined (_AES_SOURCE) && !defined (_XPG4)
> #  ifndef DBL_MIN
> #   define DBL_MIN   2.2250738585072014e-308   /* Min decimal value of a 
>                                                   double */
> #  endif /* DBL_MIN */
> 
> #  ifndef FLT_MIN 
> #   define FLT_MIN   ((float)1.17549435e-38) /* Min decimal value of a float */
> #  endif /* FLT_MIN */
> # endif  /* !defined (_AES_SOURCE) && !defined (_XPG4) */
> ================================================================
> 
> which is translated into the following in include/syslimits.h:
> 
> ================================================================
> # if !defined (_AES_SOURCE) && !defined (_XPG4)
> #  ifndef DBL_MIN
> #ifndef DBL_MIN
> #   define DBL_MIN   2.2250738585072014e-308   /* Min decimal value of a 
> #endif
>                                                   double */
> #ifndef DBL_MIN
> #  endif /* DBL_MIN */
> #endif
> 
> #ifndef FLT_MIN
> #  ifndef FLT_MIN 
> #endif
> #ifndef FLT_MIN
> #   define FLT_MIN ((float)1.17549435e-38) /* Min decimal value of a float */
> #endif
> #ifndef FLT_MIN
> #  endif /* FLT_MIN */
> #endif
> # endif  /* !defined (_AES_SOURCE) && !defined (_XPG4) */


The inclhack fix appears thus:

fix = {
    hackname = limits_ifndefs;
    files  = "limits.h";
    files  = "sys/limits.h";
    bypass = "ifndef[ \t]+FLT_MIN";

    sed  = "...";
};

Humm.  Wait a minute.  This patch should not fire because
the bypass clause skips files containing the regex "ifndef[ \t]+FLT_MIN".
Since fixincl uses its own internally compiled version of regexec,
I am curious as to how this happens.

I just tried out your snippet and a modified version with
the "ifndef DBL_MIN" and "ifndef FLT_MIN" lines removed.
Only the version with the ifndefs removed was fixed.
Something is wrong with your configuration.

$ find . -type f | ../../fixincl
Applying limits_ifndefs           to sys/limits.h
Fixed:  sys/limits.h

$ cat limits.h
# if !defined (_AES_SOURCE) && !defined (_XPG4)
#  ifndef DBL_MIN
#   define DBL_MIN   2.2250738585072014e-308   /* Min decimal value of a
                                                  double */
#  endif /* DBL_MIN */

#  ifndef FLT_MIN
#   define FLT_MIN   ((float)1.17549435e-38) /* Min decimal value of a float */
#  endif /* FLT_MIN */
# endif  /* !defined (_AES_SOURCE) && !defined (_XPG4) */

$ cat sys/limits.h
#if !defined (_AES_SOURCE) && !defined (_XPG4)
#  define DBL_MIN   2.2250738585072014e-308   /* Min decimal value of a
                                                 double */

#  define FLT_MIN   ((float)1.17549435e-38) /* Min decimal value of a float */
#endif  /* !defined (_AES_SOURCE) && !defined (_XPG4) */


More information about the Gcc-bugs mailing list