|
|
1.1 ! root 1: /* Copyright (c) 1979 Regents of the University of California */ ! 2: # ! 3: /* ! 4: * pi - Pascal interpreter code translator ! 5: * ! 6: * Charles Haley, Bill Joy UCB ! 7: * Version 1.2 November 1978 ! 8: */ ! 9: ! 10: #include "whoami" ! 11: #include "0.h" ! 12: ! 13: long ! 14: a8tol(cp) ! 15: char *cp; ! 16: { ! 17: int err; ! 18: long l; ! 19: register CHAR c; ! 20: ! 21: l = 0; ! 22: err = 0; ! 23: while ((c = *cp++) != '\0') { ! 24: if (c == '8' || c == '9') ! 25: if (err == 0) { ! 26: error("8 or 9 in octal number"); ! 27: err++; ! 28: } ! 29: c -= '0'; ! 30: if ((l & 0160000000000L) != 0) ! 31: if (err == 0) { ! 32: error("Number too large for this implementation"); ! 33: err++; ! 34: } ! 35: l = (l << 3) | c; ! 36: } ! 37: return (l); ! 38: } ! 39: ! 40: /* ! 41: * Note that the version of atof ! 42: * used in this compiler does not ! 43: * (sadly) complain when floating ! 44: * point numbers are too large. ! 45: */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.