Well, this either fixes the problem or drives it deeper into hiding.  I 
never managed to see blood on the murder weapon in the debugger, but after 
applying this patch I no longer get the crash, and fh.t passes all tests 
successfully.  The patch disables the fileno macro, which, as I understand 
it, will force it to use the RTL function rather than the broken in-line 
code.  The relevant page from the RTL manual is at:

<http://www.openvms.digital.com/commercial/c/5763p025.htm#index_x_720>

Is vmsish.h the best place for this?  BTW, this is based on vmsperl_pre56_3.

--- vms/vmsish.h;-0     Thu Mar  2 20:25:05 2000
+++ vms/vmsish.h        Mon Mar  6 12:15:37 2000
@@ -717,4 +717,9 @@
  #undef HAS_NTOHL
  #endif
  
+/* The C RTL manual says to undef the macro for DEC C 5.2 and lower. */
+#if defined(fileno) && __DECC_VER < 50300000
+#undef fileno 
+#endif 
+
  #endif  /* __vmsish_h_included */
End of Patch.

Reply via email to