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