home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #26 / NN_1992_26.iso / spool / gnu / gcc / bug / 2709 < prev    next >
Encoding:
Text File  |  1992-11-11  |  2.6 KB  |  73 lines

  1. Newsgroups: gnu.gcc.bug
  2. Path: sparky!uunet!convex!linac!pacific.mps.ohio-state.edu!cis.ohio-state.edu!claude.cs.umb.edu!karl
  3. From: karl@claude.cs.umb.edu (Karl Berry)
  4. Subject: GCC 2.3.1 on Sun Unix 3.5
  5. Message-ID: <199211111559.AA01990@claude.cs.umb.edu>
  6. Sender: gnulists@ai.mit.edu
  7. Reply-To: karl@cs.umb.edu
  8. Organization: GNUs Not Usenet
  9. Distribution: gnu
  10. Date: Wed, 11 Nov 1992 05:59:11 GMT
  11. Approved: bug-gcc@prep.ai.mit.edu
  12. Lines: 59
  13.  
  14. GCC 2.3.1 doesn't quite bootstrap on a Sun 3 running 3.5, configured as
  15. `sun3os3' -- the system compiler doesn't permit mixing enumerated and
  16. integral types in some contexts.  optabs.c is the only offending file.
  17. I can't say this patch is pretty, but at least compilation doesn't bomb
  18. out.
  19.  
  20. Tue Nov 10 19:04:36 1992  Karl Berry  (karl@cs.umb.edu)
  21.  
  22.     * optabs.c (init_libfuncs): Use int instead of enum for
  23.     first_mode, last_mode, and mode, and cast reg_class_subunion used
  24.     as a subscript, to appease Sun 3.5's cc.
  25.  
  26. *** ./ORIG/optabs.c    Mon Oct  5 02:21:02 1992
  27. --- ./optabs.c    Sun Nov  8 11:10:06 1992
  28. ***************
  29. *** 3739,3749 ****
  30.   init_libfuncs (optable, first_mode, last_mode, opname, suffix)
  31.       register optab optable;
  32.       register char *opname;
  33. !     register enum machine_mode first_mode;
  34. !     register enum machine_mode last_mode;
  35.       register char suffix;
  36.   {
  37. !   register enum machine_mode mode;
  38.     register unsigned opname_len = strlen (opname);
  39.   
  40.     for (mode = first_mode; mode <= last_mode; mode++)
  41. --- 3739,3749 ----
  42.   init_libfuncs (optable, first_mode, last_mode, opname, suffix)
  43.       register optab optable;
  44.       register char *opname;
  45. !     register int first_mode;
  46. !     register int last_mode;
  47.       register char suffix;
  48.   {
  49. !   register int mode;
  50.     register unsigned opname_len = strlen (opname);
  51.   
  52.     for (mode = first_mode; mode <= last_mode; mode++)
  53. *** ./ORIG/regclass.c    Mon Oct 12 18:19:25 1992
  54. --- ./regclass.c    Sun Nov  8 11:51:11 1992
  55. ***************
  56. *** 893,899 ****
  57.         if (pass == 1 || ! flag_expensive_optimizations)
  58.           for (class = 0; class < N_REG_CLASSES; class++)
  59.             if (p->cost[class] < p->mem_cost
  60. !           && (reg_class_size[reg_class_subunion[(int) alt][class]]
  61.                 > reg_class_size[(int) alt])
  62.   #ifdef FORBIDDEN_INC_DEC_CLASSES
  63.             && ! (in_inc_dec[i] && forbidden_inc_dec_class[class])
  64. --- 893,899 ----
  65.         if (pass == 1 || ! flag_expensive_optimizations)
  66.           for (class = 0; class < N_REG_CLASSES; class++)
  67.             if (p->cost[class] < p->mem_cost
  68. !           && (reg_class_size[(int) reg_class_subunion[(int) alt][class]]
  69.                 > reg_class_size[(int) alt])
  70.   #ifdef FORBIDDEN_INC_DEC_CLASSES
  71.             && ! (in_inc_dec[i] && forbidden_inc_dec_class[class])
  72.  
  73.