require '_h2ph_pre.ph';

no warnings 'redefine';

unless(defined(&_MACHINE_LIMITS_H_)) {
    eval 'sub _MACHINE_LIMITS_H_ () {1;}' unless defined(&_MACHINE_LIMITS_H_);
    require 'sys/cdefs.ph';
    eval 'sub MB_LEN_MAX () {6;}' unless defined(&MB_LEN_MAX);
    if((defined(&__POSIX_VISIBLE) ? &__POSIX_VISIBLE : 0) || (defined(&__XPG_VISIBLE) ? &__XPG_VISIBLE : 0)) {
	unless(defined(&SIZE_MAX)) {
	    eval 'sub SIZE_MAX () { &UINT_MAX;}' unless defined(&SIZE_MAX);
	}
	eval 'sub SSIZE_MAX () { &INT_MAX;}' unless defined(&SSIZE_MAX);
    }
    if((defined(&__BSD_VISIBLE) ? &__BSD_VISIBLE : 0)) {
	eval 'sub SIZE_T_MAX () { &UINT_MAX;}' unless defined(&SIZE_T_MAX);
	eval 'sub UQUAD_MAX () {(( &u_quad_t)0-1);}' unless defined(&UQUAD_MAX);
	eval 'sub QUAD_MAX () {(( &quad_t)( &UQUAD_MAX >> 1));}' unless defined(&QUAD_MAX);
	eval 'sub QUAD_MIN () {(- &QUAD_MAX-1);}' unless defined(&QUAD_MIN);
    }
}
1;
