bug in egcs 19980418 snapshot

Jim Wilson wilson@cygnus.com
Mon Apr 20 22:29:00 GMT 1998


Jeff Law was a little too quick to respond.  This looks very much like
a commonly reported user error, but in this case it is a real bug triggered
by a change I made last Saturday.

This problem only occurs if configured for a i386 target, which is why most
people won't see it.

Note that -Di386 is always defined by default, so there is no need to put
it in CPP_CPU_DEFAULT_SPEC.

I believe this patch fixes your problem.  I have already checked it in.

Mon Apr 20 20:44:25 1998  Jim Wilson  <wilson@cygnus.com>

	* gcc.c (do_spec_1, case '['): Move flag out of loop and initialize it.

Index: gcc.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/gcc.c,v
retrieving revision 1.27
diff -p -r1.27 gcc.c
*** gcc.c	1998/04/20 13:27:00	1.27
--- gcc.c	1998/04/21 03:44:13
*************** do_spec_1 (spec, inswitch, soft_matched_
*** 3869,3881 ****
  		      char *x = (char *) alloca (strlen (name) * 2 + 1);
  		      char *buf = x;
  		      char *y = name;
  
  		      /* Copy all of NAME into BUF, but put __ after
  			 every -D and at the end of each arg,  */
  		      while (1)
  			{
- 			  int flag;
- 
  			  if (! strncmp (y, "-D", 2))
  			    {
  			      *x++ = '-';
--- 3869,3880 ----
  		      char *x = (char *) alloca (strlen (name) * 2 + 1);
  		      char *buf = x;
  		      char *y = name;
+ 		      int flag = 0;
  
  		      /* Copy all of NAME into BUF, but put __ after
  			 every -D and at the end of each arg,  */
  		      while (1)
  			{
  			  if (! strncmp (y, "-D", 2))
  			    {
  			      *x++ = '-';



More information about the Gcc-bugs mailing list