home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   comp.lang.c      Meh, in C you gotta define EVERYTHING      243,242 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 241,736 of 243,242   
   bart to Kaz Kylheku   
   Re: New and improved version of cdecl   
   31 Oct 25 23:40:03   
   
   From: bc@freeuk.com   
      
   On 31/10/2025 00:28, Kaz Kylheku wrote:   
   > On 2025-10-30, David Brown  wrote:   
   >> If I were developing a compiler, I would not advertise any kind of   
   >> lines-per-second value.  It is a totally useless metric - as useless as   
   >> measuring developer performance on the lines of code he/she writes per day.   
   >   
   > If that were your only advantage, you'd have to flout it.   
   >   
   > "[[ Our compiler emits lousy code, emits only half the required ISO   
   > diagnostics (and those are all there are), and is compatible with only   
   > 75% of your system's header files, and 80% of the ABI, but ...]]   
      
   Those incompatibilities anyway, even on big compilers, and people are   
   tolerant of them.   
      
   How many headers have you seen which multiple conditional blocks which   
   pander to different compilers, for example (from SDL2):   
      
   # if defined(HAVE_ALLOCA_H)   
   #  include    
   # elif defined(__GNUC__)   
   #  define alloca __builtin_alloca   
   # elif defined(_MSC_VER)   
   #  include    
   #  define alloca _alloca   
   # elif defined(__WATCOMC__)   
   #  include    
   # elif defined(__BORLANDC__)   
   #  include    
   # elif defined(__DMC__)   
   #  include    
   # elif defined(__AIX__)   
   #pragma alloca   
   # elif defined(__MRC__)   
   void *alloca(unsigned);   
   # else   
   char *alloca();   
   # endif   
   #endif   
      
   (If you are writing your own compiler, where is it going to fit in?)   
      
   In fact, half of configure scripts seem to be about testing the   
   capabilities of the C compiler, so it is apparently expected that any of   
   those features can be missing.   
      
   And as for diagnostics, it seems that you have actively know about them   
   and explicitly enable checking for them.   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca