12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)/* Copyright (c) 2012 The Chromium Authors. All rights reserved.
22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) * Use of this source code is governed by a BSD-style license that can be
3ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch * found in the LICENSE file. */
4ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#ifndef NACL_IO_OSINTTYPES_H_
62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define NACL_IO_OSINTTYPES_H_
72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
8ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch/* Define printf/scanf format strings for size_t. */
92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(WIN32)
112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if !defined(PRIuS)
132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define PRIuS "Iu"
142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if !defined(SCNuS)
172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define SCNuS "Iu"
182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
20f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#else
212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
22010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)#if !defined(__STDC_FORMAT_MACROS)
23010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)#define __STDC_FORMAT_MACROS 1
24010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)#endif
252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include <inttypes.h>
262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if !defined(PRIuS)
282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define PRIuS "zu"
292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if !defined(SCNuS)
322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define SCNuS "zu"
332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
35f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#endif
362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
376e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)#if !defined(__native_client__)
386e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)#define PRIoff "ld"
396e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)#else
406e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)#define PRIoff "lld"
416e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)#endif
426e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)
43ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch#endif  /* NACL_IO_OSINTTYPES_H_ */
44