NetSurf
inttypes.h
Go to the documentation of this file.
1/*
2 * Copyright 2017 Vincent Sanders <vince@netsurf-browser.org>
3 *
4 * This file is part of NetSurf, http://www.netsurf-browser.org/
5 *
6 * NetSurf is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; version 2 of the License.
9 *
10 * NetSurf is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19/**
20 * \file
21 * Netsurf additional integer type formatting macros.
22 */
23
24#ifndef NETSURF_INTTYPES_H
25#define NETSURF_INTTYPES_H
26
27#include <inttypes.h>
28
29#ifndef PRIxPTR
30#define PRIxPTR "x"
31#endif
32
33#ifndef PRId64
34#define PRId64 "lld"
35#endif
36
37#ifndef PRIu64
38#define PRIu64 "llu"
39#endif
40
41/* Windows does not have sizet formating codes */
42#if defined(_WIN32)
43
44/** windows printf formatting for size_t type */
45#define PRIsizet "Iu"
46
47/** windows printf formatting for ssize_t type */
48#define PRIssizet "Id"
49
50#else
51
52/** c99 standard printf formatting for size_t type */
53#define PRIsizet "zu"
54
55#if defined(__riscos__)
56/** riscos/unixlib defines ssize_t as a long int */
57#define PRIssizet "ld"
58#else
59/** c99 standard printf formatting for ssize_t type */
60#define PRIssizet "zd"
61#endif
62
63#endif
64
65
66
67#endif
68
Netsurf additional integer type formatting macros.