Home | History | Annotate | Line # | Download | only in stdlib
strtoimax.c revision 1.2.30.2
      1       1.1   lneto /* $DragonFly: src/lib/libc/stdlib/strtoimax.c,v 1.2 2008/08/19 15:50:24 joerg Exp $ */
      2       1.1   lneto 
      3       1.1   lneto /*-
      4       1.1   lneto  * Copyright (c) 2005 The DragonFly Project.  All rights reserved.
      5       1.1   lneto  * Copyright (c) 2003 Citrus Project,
      6       1.1   lneto  * All rights reserved.
      7       1.1   lneto  *
      8       1.1   lneto  * Redistribution and use in source and binary forms, with or without
      9       1.1   lneto  * modification, are permitted provided that the following conditions
     10       1.1   lneto  * are met:
     11       1.1   lneto  * 1. Redistributions of source code must retain the above copyright
     12       1.1   lneto  *    notice, this list of conditions and the following disclaimer.
     13       1.1   lneto  * 2. Redistributions in binary form must reproduce the above copyright
     14       1.1   lneto  *    notice, this list of conditions and the following disclaimer in the
     15       1.1   lneto  *    documentation and/or other materials provided with the distribution.
     16       1.1   lneto  *
     17       1.1   lneto  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
     18       1.1   lneto  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     19       1.1   lneto  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     20       1.1   lneto  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
     21       1.1   lneto  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     22       1.1   lneto  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     23       1.1   lneto  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     24       1.1   lneto  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
     25       1.1   lneto  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
     26       1.1   lneto  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     27       1.1   lneto  * SUCH DAMAGE.
     28       1.1   lneto  */
     29       1.1   lneto 
     30       1.1   lneto #if HAVE_NBTOOL_CONFIG_H
     31       1.1   lneto #include "nbtool_config.h"
     32       1.1   lneto #endif
     33       1.1   lneto 
     34       1.1   lneto #include <sys/cdefs.h>
     35  1.2.30.1  martin __RCSID("$NetBSD: strtoimax.c,v 1.2.30.2 2020/04/21 19:37:50 martin Exp $");
     36       1.1   lneto 
     37       1.1   lneto #ifdef _LIBC
     38       1.1   lneto #include "namespace.h"
     39       1.1   lneto #endif
     40       1.1   lneto 
     41       1.1   lneto #if defined(_KERNEL)
     42       1.1   lneto #include <sys/param.h>
     43       1.1   lneto #include <lib/libkern/libkern.h>
     44       1.1   lneto #elif defined(_STANDALONE)
     45       1.1   lneto #include <sys/param.h>
     46       1.1   lneto #include <lib/libkern/libkern.h>
     47       1.1   lneto #include <lib/libsa/stand.h>
     48       1.1   lneto #else
     49       1.1   lneto #include <assert.h>
     50       1.1   lneto #include <ctype.h>
     51       1.1   lneto #include <errno.h>
     52       1.1   lneto #include <limits.h>
     53       1.1   lneto #include <inttypes.h>
     54       1.1   lneto #include <stdint.h>
     55       1.1   lneto #include <stdlib.h>
     56       1.1   lneto #endif
     57       1.1   lneto 
     58       1.1   lneto #define	_FUNCNAME	strtoimax
     59       1.1   lneto #define	__INT		intmax_t
     60       1.1   lneto #define	__INT_MIN	INTMAX_MIN
     61       1.1   lneto #define	__INT_MAX	INTMAX_MAX
     62       1.1   lneto 
     63       1.1   lneto #include "_strtol.h"
     64       1.1   lneto 
     65       1.1   lneto #ifdef _LIBC
     66       1.2   joerg __weak_alias(strtoimax, _strtoimax)
     67       1.2   joerg __weak_alias(strtoimax_l, _strtoimax_l)
     68       1.1   lneto #endif
     69