🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.gcc.bug
Article #6397

gcc 2.7.1 fixinclude foulup

#6397
From: s sullivan
Date: Thu, 23 Nov 1995 00:00
82 lines
3019 bytes
Hi -
I'm running:
   Solaris 2.4 x.86 on a Pentium
   gcc 2.7.1

and am compiling gnu's tar-1.11.8.  When compiling the file
intl/dcgettext I get:

gcc -c -DDEF_MSG_DOM_DIR=\"/usr/local/lib/locale\" -DHAVE_CONFIG_H -I.. -I./.. -I. -I./../intl -I../lib -I./../lib  -g -O dcgettext.c
dcgettext.c:47: parse error before `__extension__'
dcgettext.c:47: parse error before `if'
dcgettext.c:47: conflicting declarations of `__catalog_counter__'
dcgettext.c:47: `__catalog_counter__' previously declared here
dcgettext.c:47: `_nl_msg_cat_cntr' undeclared here (not in a function)
dcgettext.c:47: warning: data definition has no type or storage class
dcgettext.c:47: parse error before `}'
dcgettext.c:47: conflicting types for `__translation__'
dcgettext.c:47: previous declaration of `__translation__'
dcgettext.c:47: warning: data definition has no type or storage class
dcgettext.c:47: parse error before `}'
dcgettext.c:51: parse error before `{'
dcgettext.c:57: parse error before `if'
... and on and on ...

The lines in dcgettext.c are:
40 /* Value used as the default domain for gettext(3).  */
41 const char *_nl_current_default_domain = _nl_default_default_domain;
42 
43 
44 /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
45    locale.  */
46 char *
47 dcgettext (domainname, msgid, category)
48      const char *domainname;
49      const char *msgid;
50      int category;
51 {
52   struct loaded_domain *domain;
53   size_t top, act, bottom;
54   int cmp_val;
 



Using the -E option I find the preprocessor output is:

gcc -E -DDEF_MSG_DOM_DIR=\"/usr/local/lib/locale\" -DHAVE_CONFIG_H -I.. -I./.. -I. -I./../intl -I../lib -I./../lib  -g -O dcgettext.c

const char *_nl_current_default_domain = _nl_default_default_domain;
 
 
 
 
char *
(__extension__  ({      if (__builtin_constant_p (  msgid ))    {       extern i
nt _nl_msg_cat_cntr;    static char *__translation__;   static int __catalog_cou
nter__; if (! __translation__ || __catalog_counter__ != _nl_msg_cat_cntr) {     
__translation__ =       (dcgettext) (( domainname ), (  msgid ), (  category ));
        __catalog_counter__ = _nl_msg_cat_cntr; }       __translation__;        
}       else    (dcgettext) (( domainname ), (  msgid ), (  category ));        
})) 
     const char *domainname;
     const char *msgid;
     int category;
{
  struct loaded_domain *domain;
  size_t top, act, bottom;
  int cmp_val;








This looks pretty suspicious to me!  What do you think?

Thanks -

Steve Sullivan
sullivan@mathcom.com
Technical Details
Message-ID: <9511231437.AA00190@thurber.Mathcom.com>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 113d02,50a9bd53fb43ac8a,start
X-Google-Attributes: gid113d02,public
From: sullivan@mathcom.com (s sullivan)
Subject: gcc 2.7.1 fixinclude foulup
Date: 1995/11/23
Message-ID: <9511231437.AA00190@thurber.Mathcom.com>
X-Deja-AN: 120031663
distribution: gnu
sender: daemon@cis.ohio-state.edu
organization: GNUs Not Usenet
newsgroups: gnu.gcc.bug