OSDN Git Service

PR bootstrap/11932
[pf3gnuchains/gcc-fork.git] / libf2c / f2cext.c
index fa1eff7..69d12b6 100644 (file)
@@ -16,7 +16,7 @@ License along with GNU Fortran; see the file COPYING.LIB.  If
 not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 Boston, MA 02111-1307, USA.  */
 
-
+#include <math.h>              /* for j0 et al */
 #include <f2c.h>
 typedef void *sig_proc;        /* For now, this will have to do. */
 
@@ -140,7 +140,8 @@ integer access_ (const char *name, const char *mode, ftnlen Lname, ftnlen Lmode)
 #endif
 
 #ifdef Lalarm
-integer alarm_ (integer *seconds, sig_proc proc, integer *status) {
+integer alarm_ (integer *seconds, sig_proc proc,
+               integer *status __attribute__ ((__unused__))) {
     extern integer G77_alarm_0 (integer *seconds, sig_proc proc);
     return G77_alarm_0 (seconds, proc);
 }
@@ -203,10 +204,23 @@ void ctime_ (char *chtime, const ftnlen Lchtime, longint *xstime) {
 }
 #endif
 
-#ifdef Ldate
+#ifdef Ldate_y2kbuggy
 int date_ (char *buf, ftnlen buf_len) {
-    extern int G77_date_0 (char *buf, ftnlen buf_len);
-    return G77_date_0 (buf, buf_len);
+  /* Fail to link, so user sees attempt to invoke non-Y2K-compliant
+     routine.  */
+    extern int G77_date_y2kbuggy_0 (char *buf, ftnlen buf_len);
+    return G77_date_y2kbuggy_0 (buf, buf_len);
+}
+#endif
+
+#ifdef Ldate_y2kbug
+int date_y2kbug__ (char *buf, ftnlen buf_len) {
+  /* If user wants to invoke the non-Y2K-compliant routine via
+     an `EXTERNAL' interface, avoiding the warning via g77's
+     `INTRINSIC' interface, force coding of "y2kbug" string in
+     user's program.  */
+    extern int G77_date_y2kbug_0 (char *buf, ftnlen buf_len);
+    return G77_date_y2kbug_0 (buf, buf_len);
 }
 #endif
 
@@ -512,13 +526,6 @@ integer symlnk_ (const char *path1, const char *path2, const ftnlen Lpath1, cons
 }
 #endif
 
-#ifdef Lsclock
-int system_clock_ (integer *count, integer *count_rate, integer *count_max) {
-    extern int G77_system_clock_0 (integer *count, integer *count_rate, integer *count_max);
-    return G77_system_clock_0 (count, count_rate, count_max);
-}
-#endif
-
 #ifdef Ltime
 longint time_ (void) {
     extern longint G77_time_0 (void);
@@ -547,10 +554,23 @@ integer unlink_ (const char *str, const ftnlen Lstr) {
 }
 #endif
 
-#ifdef Lvxtidt
+#ifdef Lvxtidt_y2kbuggy
 int vxtidate_ (integer *m, integer *d, integer *y) {
-    extern int G77_vxtidate_0 (integer *m, integer *d, integer *y);
-    return G77_vxtidate_0 (m, d, y);
+  /* Fail to link, so user sees attempt to invoke non-Y2K-compliant
+     routine.  */
+    extern int G77_vxtidate_y2kbuggy_0 (integer *m, integer *d, integer *y);
+    return G77_vxtidate_y2kbuggy_0 (m, d, y);
+}
+#endif
+
+#ifdef Lvxtidt_y2kbug
+int vxtidate_y2kbug__ (integer *m, integer *d, integer *y) {
+  /* If user wants to invoke the non-Y2K-compliant routine via
+     an `EXTERNAL' interface, avoiding the warning via g77's
+     `INTRINSIC' interface, force coding of "y2kbug" string in
+     user's program.  */
+    extern int G77_vxtidate_y2kbug_0 (integer *m, integer *d, integer *y);
+    return G77_vxtidate_y2kbug_0 (m, d, y);
 }
 #endif