home *** CD-ROM | disk | FTP | other *** search
/ Programming Win32 Under the API / ProgrammingWin32UnderTheApiPatVillani.iso / patches / gcc-2_95_2-x86-win32-patches.zi / gcc-2.95.2-patches / broken-down / gcc-2.95.2-c++-com2.diff < prev    next >
Encoding:
Text File  |  1999-11-08  |  1.0 KB  |  32 lines

  1. Wed Jun  9 18:30:24 1999  Mumit Khan  <khan@xraylith.wisc.edu>
  2.  
  3.     * class.c (finish_base_struct): Allow multiple COM base classes
  4.     as well as non-COM bases as long as it's not the leftmost.
  5.  
  6. Index: gcc-2.95.2/gcc/cp/class.c
  7. ===================================================================
  8. RCS file: /homes/khan/src/CVSROOT/gcc-2.95.2/gcc/cp/class.c,v
  9. retrieving revision 1.5
  10. diff -u -3 -p -r1.5 class.c
  11. --- gcc-2.95.2/gcc/cp/class.c    1999/11/05 06:20:01    1.5
  12. +++ gcc-2.95.2/gcc/cp/class.c    1999/11/05 06:23:32
  13. @@ -1643,15 +1643,12 @@ finish_base_struct (t, b)
  14.        if (CLASSTYPE_COM_INTERFACE (basetype))
  15.      {
  16.        CLASSTYPE_COM_INTERFACE (t) = 1;
  17. -      if (i > 0)
  18. -        cp_error
  19. -          ("COM interface type `%T' must be the leftmost base class",
  20. -           basetype);
  21.      }
  22.        else if (CLASSTYPE_COM_INTERFACE (t) && i == 0)
  23.      {
  24. -      cp_error ("COM interface type `%T' with non-COM base class `%T'",
  25. -            t, basetype);
  26. +      cp_error 
  27. +        ("COM interface type `%T' with non-COM leftmost base class `%T'",
  28. +         t, basetype);
  29.        CLASSTYPE_COM_INTERFACE (t) = 0;
  30.      }
  31.  
  32.