1// Copyright 2014 The Android Open Source Project 2// 3// This software is licensed under the terms of the GNU General Public 4// License version 2, as published by the Free Software Foundation, and 5// may be copied, distributed, and modified under those terms. 6// 7// This program is distributed in the hope that it will be useful, 8// but WITHOUT ANY WARRANTY; without even the implied warranty of 9// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 10// GNU General Public License for more details. 11 12#ifndef ANDROID_BASE_LIMITS_H 13#define ANDROID_BASE_LIMITS_H 14 15// In C++, <stdint.h> will only define macros like SIZE_MAX if you have 16// defined __STDC_LIMIT_MACROS before including <stdint.h>. This header 17// is used to do just that and verify that the macros are properly 18// defined. 19// 20// NOTE: We have to define __STDC_FORMAT_MACROS in case the user wants 21// to use the corresponding macros as well. 22 23#define __STDC_LIMIT_MACROS 1 24#define __STDC_FORMAT_MACROS 1 25#include <inttypes.h> 26 27#ifndef SIZE_MAX 28#warning "<inttypes.h> has been included before this header." 29#warning "This prevents the definition of useful macros." 30#error "Please include <android/base/Limits.h> first!" 31#endif 32 33#endif // ANDROID_BASE_LIMITS_H 34