11638Srgrimes/*- 21638Srgrimes * Copyright (c) 1995 31638Srgrimes * The Regents of the University of California. All rights reserved. 41638Srgrimes * 51638Srgrimes * Redistribution and use in source and binary forms, with or without 61638Srgrimes * modification, are permitted provided that the following conditions 71638Srgrimes * are met: 81638Srgrimes * 1. Redistributions of source code must retain the above copyright 91638Srgrimes * notice, this list of conditions and the following disclaimer. 101638Srgrimes * 2. Redistributions in binary form must reproduce the above copyright 111638Srgrimes * notice, this list of conditions and the following disclaimer in the 121638Srgrimes * documentation and/or other materials provided with the distribution. 131638Srgrimes * 4. Neither the name of the University nor the names of its contributors 141638Srgrimes * may be used to endorse or promote products derived from this software 151638Srgrimes * without specific prior written permission. 161638Srgrimes * 171638Srgrimes * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 181638Srgrimes * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 191638Srgrimes * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 201638Srgrimes * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 211638Srgrimes * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 221638Srgrimes * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 231638Srgrimes * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 241638Srgrimes * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 251638Srgrimes * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 261638Srgrimes * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 271638Srgrimes * SUCH DAMAGE. 281638Srgrimes * 291638Srgrimes * @(#)arith.h 1.1 (Berkeley) 5/4/95 301638Srgrimes * $FreeBSD: releng/11.0/bin/sh/arith.h 223060 2011-06-13 21:03:27Z jilles $ 311638Srgrimes */ 321638Srgrimes 3350476Speter#include "shell.h" 341638Srgrimes 351638Srgrimes#define DIGITS(var) (3 + (2 + CHAR_BIT * sizeof((var))) / 3) 361638Srgrimes 371638Srgrimesarith_t arith(const char *); 381638Srgrimesvoid arith_lex_reset(void); 391638Srgrimes