When attempting a threaded build of perl@6409 with DEC C 6.2, it quit 
with the following complaint on av.c:

        E             extern int Perl___notused
       3   50254             (void)SvREFCNT_inc(sv);
                 ..................1
%CC-E-BIFPROTO, (1) In this statement, the built-in function, 
"__ATOMIC_INCREMENT_LONG", requires a prototype declaration from 
<builtins.h>.

        E                   ((thr->TSv)=(SV*)(sv), ((thr->TSv) && 
__ATOMIC_INCREMENT_LONG(&(((thr->TSv))->sv_refcnt))), (SV *)(thr->T
        E        Sv))
       2   50255         }


The following seems to fix it, but I have no idea whether that's 
really the best place to put it.  I didn't see an obvious place in 
vmsish.h and putting it in thread.h seemed to have no effect.  Any 
thoughts?   Has this head always been available on VMS, or do we need 
a wrapper checking for OS or compiler version?

--- perl.h;-0   Tue Jul 11 16:40:11 2000
+++ perl.h      Wed Aug  2 01:03:42 2000
@@ -737,6 +737,9 @@
  #endif

  #ifdef USE_THREADS
+#  ifdef VMS
+#    include <builtins.h>
+#  endif
  #  define ERRSV (thr->errsv)
  #  define DEFSV THREADSV(0)
  #  define SAVE_DEFSV save_threadsv(0)
[End of patch}
-- 
____________________________________________
Craig A. Berry
mailto:[EMAIL PROTECTED]

Reply via email to