require '_h2ph_pre.ph';

no warnings qw(redefine misc);

require 'sys/cdefs.ph';
require 'sys/featuretest.ph';
require 'sys/null.ph';
undef(&assert) if defined(&assert);
if(defined(&NDEBUG)) {
    unless(defined(&__lint__)) {
	eval 'sub assert {
	    my($e) = @_;
    	    eval q(( &__static_cast( &void,0)));
	}' unless defined(&assert);
    } else {
	eval 'sub assert {
	    my($e) = @_;
    	    eval q();
	}' unless defined(&assert);
    }
} else {
    if((defined(&__STDC__) ? &__STDC__ : undef)) {
	eval 'sub assert {
	    my($e) = @_;
    	    eval q((($e) ?  &__static_cast( &void,0) :  &__assert13( &__FILE__,  &__LINE__,  &__assert_function__, $e)));
	}' unless defined(&assert);
    } else {
	eval 'sub assert {
	    my($e) = @_;
    	    eval q((($e) ?  &__static_cast( &void,0) :  &__assert13( &__FILE__,  &__LINE__,  &__assert_function__, \\"e\\")));
	}' unless defined(&assert);
    }
}
undef(&_DIAGASSERT) if defined(&_DIAGASSERT);
if(!defined(&_DIAGNOSTIC)) {
    if(!defined(&__lint__)) {
	eval 'sub _DIAGASSERT {
	    my($e) = @_;
    	    eval q(( &__static_cast( &void,0)));
	}' unless defined(&_DIAGASSERT);
    } else {
	eval 'sub _DIAGASSERT {
	    my($e) = @_;
    	    eval q();
	}' unless defined(&_DIAGASSERT);
    }
} else {
    if((defined(&__STDC__) ? &__STDC__ : undef)) {
	eval 'sub _DIAGASSERT {
	    my($e) = @_;
    	    eval q((($e) ?  &__static_cast( &void,0) :  &__diagassert13( &__FILE__,  &__LINE__,  &__assert_function__, $e)));
	}' unless defined(&_DIAGASSERT);
    } else {
	eval 'sub _DIAGASSERT {
	    my($e) = @_;
    	    eval q((($e) ?  &__static_cast( &void,0) :  &__diagassert13( &__FILE__,  &__LINE__,  &__assert_function__, \\"e\\")));
	}' unless defined(&_DIAGASSERT);
    }
}
if(defined(&__lint__)) {
    eval 'sub __assert_function__ () {( &__static_cast( &const  &void *,0));}' unless defined(&__assert_function__);
}
 elsif(defined(&__STDC_VERSION__)  && (defined(&__STDC_VERSION__) ? &__STDC_VERSION__ : undef) >= 199901) {
    eval 'sub __assert_function__ () { &__func__;}' unless defined(&__assert_function__);
}
 elsif( &__GNUC_PREREQ__(2, 6)) {
    eval 'sub __assert_function__ () { &__PRETTY_FUNCTION__;}' unless defined(&__assert_function__);
} else {
    eval 'sub __assert_function__ () {( &__static_cast( &const  &void *,0));}' unless defined(&__assert_function__);
}
unless(defined(&__ASSERT_DECLARED)) {
    eval 'sub __ASSERT_DECLARED () {1;}' unless defined(&__ASSERT_DECLARED);
}
if(defined(&_ISOC11_SOURCE) || ((defined(&__STDC_VERSION__) ? &__STDC_VERSION__ : undef) - 0) >= 201101) {
    unless(defined(&static_assert)) {
	eval 'sub static_assert () { &_Static_assert;}' unless defined(&static_assert);
    }
}
1;
