1/* Copyright (C) 1996 Free Software Foundation, Inc. 2This file is part of GNU Fortran libU77 library. 3 4This library is free software; you can redistribute it and/or modify it 5under the terms of the GNU Library General Public License as published 6by the Free Software Foundation; either version 2 of the License, or 7(at your option) any later version. 8 9GNU Fortran is distributed in the hope that it will be useful, 10but WITHOUT ANY WARRANTY; without even the implied warranty of 11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12Library General Public License for more details. 13 14You should have received a copy of the GNU Library General Public 15License along with GNU Fortran; see the file COPYING.LIB. If 16not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 17Boston, MA 02111-1307, USA. */ 18 19#ifdef HAVE_CONFIG_H 20#include "config.h" 21#endif 22#ifdef HAVE_CONFIG_H 23#include "config.h" 24#endif 25#include <stdio.h> 26#include "f2c.h" 27#include "fio.h" 28 29#ifdef KR_headers 30integer G77_fgetc_0 (lunit, c, Lc) 31 integer *lunit; 32 ftnlen Lc; /* should be 1 */ 33 char *c; 34#else 35integer G77_fgetc_0 (const integer *lunit, char *c, ftnlen Lc) 36#endif 37{ 38 int err; 39 FILE *f = f__units[*lunit].ufd; 40 41 if (*lunit>=MXUNIT || *lunit<0) 42 return 101; /* bad unit error */ 43 err = getc (f); 44 if (err == EOF) { 45 if (feof (f)) 46 return -1; 47 else 48 return ferror (f); } 49 else { 50 if (Lc == 0) 51 return 0; 52 53 c[0] = err; 54 while (--Lc) 55 *++c = ' '; 56 return 0; } 57} 58 59#ifdef KR_headers 60integer G77_fget_0 (c, Lc) 61 ftnlen Lc; /* should be 1 */ 62 char *c; 63#else 64integer G77_fget_0 (char *c, const ftnlen Lc) 65#endif 66{ 67 integer five = 5; 68 69 return G77_fgetc_0 (&five, c, Lc); 70} 71