require '_h2ph_pre.ph';

unless(defined(&_ETIP_H)) {
    eval 'sub _ETIP_H () {1;}' unless defined(&_ETIP_H);
    unless(defined(&HAVE_BUILTIN_H)) {
	eval 'sub HAVE_BUILTIN_H () {0;}' unless defined(&HAVE_BUILTIN_H);
    }
    unless(defined(&HAVE_GXX_BUILTIN_H)) {
	eval 'sub HAVE_GXX_BUILTIN_H () {0;}' unless defined(&HAVE_GXX_BUILTIN_H);
    }
    unless(defined(&HAVE_GPP_BUILTIN_H)) {
	eval 'sub HAVE_GPP_BUILTIN_H () {0;}' unless defined(&HAVE_GPP_BUILTIN_H);
    }
    unless(defined(&HAVE_TYPEINFO)) {
	eval 'sub HAVE_TYPEINFO () {1;}' unless defined(&HAVE_TYPEINFO);
    }
    unless(defined(&HAVE_VALUES_H)) {
	eval 'sub HAVE_VALUES_H () {0;}' unless defined(&HAVE_VALUES_H);
    }
    unless(defined(&ETIP_NEEDS_MATH_H)) {
	eval 'sub ETIP_NEEDS_MATH_H () {0;}' unless defined(&ETIP_NEEDS_MATH_H);
    }
    unless(defined(&ETIP_NEEDS_MATH_EXCEPTION)) {
	eval 'sub ETIP_NEEDS_MATH_EXCEPTION () {0;}' unless defined(&ETIP_NEEDS_MATH_EXCEPTION);
    }
    unless(defined(&CPP_HAS_PARAM_INIT)) {
	eval 'sub CPP_HAS_PARAM_INIT () {0;}' unless defined(&CPP_HAS_PARAM_INIT);
    }
    if(defined(&__GNUG__)) {
	if((((defined(&__GNUG__) ? &__GNUG__ : 0) <= 2)  && ((defined(&__GNUC_MINOR__) ? &__GNUC_MINOR__ : 0) < 8))) {
	    if((defined(&HAVE_TYPEINFO) ? &HAVE_TYPEINFO : 0)) {
		require 'typeinfo';
	    }
	}
    }
    if(defined( &__GNUG__)) {
	if((defined(&HAVE_BUILTIN_H) ? &HAVE_BUILTIN_H : 0) || (defined(&HAVE_GXX_BUILTIN_H) ? &HAVE_GXX_BUILTIN_H : 0) || (defined(&HAVE_GPP_BUILTIN_H) ? &HAVE_GPP_BUILTIN_H : 0)) {
	    if((defined(&ETIP_NEEDS_MATH_H) ? &ETIP_NEEDS_MATH_H : 0)) {
		if((defined(&ETIP_NEEDS_MATH_EXCEPTION) ? &ETIP_NEEDS_MATH_EXCEPTION : 0)) {
		    undef(&exception) if defined(&exception);
		    eval 'sub exception () { &math_exception;}' unless defined(&exception);
		}
		require 'math.ph';
	    }
	    undef(&exception) if defined(&exception);
	    eval 'sub exception () { &builtin_exception;}' unless defined(&exception);
	    if((defined(&HAVE_GPP_BUILTIN_H) ? &HAVE_GPP_BUILTIN_H : 0)) {
		require 'gpp/builtin.ph';
	    }
 elsif((defined(&HAVE_GXX_BUILTIN_H) ? &HAVE_GXX_BUILTIN_H : 0)) {
		require 'g++/builtin.ph';
	    } else {
		require 'builtin.ph';
	    }
	    undef(&exception) if defined(&exception);
	}
    }
 elsif(defined ( &__SUNPRO_CC)) {
	require 'generic.ph';
	require 'string.ph';
    } else {
	require 'string.ph';
    }
    if(!defined( &NCURSES_IMPEXP)) {
	eval 'sub NCURSES_IMPEXP () {1;}' unless defined(&NCURSES_IMPEXP);
    }
    if(!defined( &NCURSES_API)) {
	eval 'sub NCURSES_API () {1;}' unless defined(&NCURSES_API);
    }
    if(!defined( &NCURSES_EXPORT)) {
	eval 'sub NCURSES_EXPORT {
	    local($type) = @_;
    	    eval q( &NCURSES_IMPEXP $type  &NCURSES_API);
	}' unless defined(&NCURSES_EXPORT);
    }
    if(!defined( &NCURSES_EXPORT_VAR)) {
	eval 'sub NCURSES_EXPORT_VAR {
	    local($type) = @_;
    	    eval q( &NCURSES_IMPEXP $type);
	}' unless defined(&NCURSES_EXPORT_VAR);
    }
    if((defined(&HAVE_VALUES_H) ? &HAVE_VALUES_H : 0)) {
	require 'values.ph';
    }
    require 'assert.ph';
    require 'eti.ph';
    require 'errno.ph';
    if((defined(&CPP_HAS_PARAM_INIT) ? &CPP_HAS_PARAM_INIT : 0)) {
	eval 'sub NCURSES_PARAM_INIT {
	    local($value) = @_;
    	    eval q(= $value);
	}' unless defined(&NCURSES_PARAM_INIT);
    } else {
	eval 'sub NCURSES_PARAM_INIT {
	    local($value) = @_;
    	    eval q();
	}' unless defined(&NCURSES_PARAM_INIT);
    }
    if(!(defined( &__GNUG__)||defined( &__SUNPRO_CC))) {
	require 'iostream.ph';
    }
    if(defined( &__GNUG__)) {
	if((((defined(&__GNUG__) ? &__GNUG__ : 0) <= 2)  && ((defined(&__GNUC_MINOR__) ? &__GNUC_MINOR__ : 0) < 8))) {
	} else {
	}
    }
 elsif(defined( &__SUNPRO_CC)) {
    } else {
    }
    eval 'sub THROWS {
        local($s) = @_;
	    eval q();
    }' unless defined(&THROWS);
}
1;
