2N/A Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010 Free Software 2N/A This program is free software: you can redistribute it and/or modify 2N/A it under the terms of the GNU General Public License as published by 2N/A the Free Software Foundation; either version 3 of the License, or 2N/A (at your option) any later version. 2N/A This program is distributed in the hope that it will be useful, 2N/A but WITHOUT ANY WARRANTY; without even the implied warranty of 2N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 2N/A GNU General Public License for more details. 2N/A You should have received a copy of the GNU General Public License 2N/A/* Written by Paul Eggert. */ 2N/A/* The extra casts in the following macros work around compiler bugs, 2N/A e.g., in Cray C 5.0.3.0. */ 2N/A/* True if the arithmetic type T is an integer type. bool counts as 2N/A/* True if negative values of the signed integer type T use two's 2N/A complement, ones' complement, or signed magnitude representation, 2N/A respectively. Much GNU code assumes two's complement, but some 2N/A people like to be portable to all possible C hosts. */ 2N/A/* True if the arithmetic type T is signed. */ 2N/A/* The maximum and minimum values for the integer type T. These 2N/A macros have undefined behavior if T is signed and has padding bits. 2N/A If this is a problem for you, please let us know how to fix it for 2N/A/* Return zero if T can be determined to be an unsigned type. 2N/A Otherwise, return 1. 2N/A When compiling with GCC, INT_STRLEN_BOUND uses this macro to obtain a 2N/A tighter bound. Otherwise, it overestimates the true bound by one byte 2N/A when applied to unsigned types of size 2, 4, 16, ... bytes. 2N/A The symbol signed_type_or_expr__ is private to this header file. */ 2N/A/* Bound on length of the string representing an integer type or expression T. 2N/A Subtract 1 for the sign bit if T is signed; log10 (2.0) < 146/485; 2N/A add 1 for integer division truncation; add 1 more for a minus sign 2N/A/* Bound on buffer size needed to represent an integer type or expression T, 2N/A including the terminating null. */ 2N/A#
endif /* GL_INTPROPS_H */