require '_h2ph_pre.ph';

no warnings qw(redefine misc);

unless(defined(&_SHARED_PTR_H)) {
    eval 'sub _SHARED_PTR_H () {1;}' unless defined(&_SHARED_PTR_H);
    require 'bits/shared_ptr_base.ph';
    if((defined(&__cpp_rtti) ? &__cpp_rtti : undef)) {
    } else {
    }
    if((defined(&__cpp_rtti) ? &__cpp_rtti : undef)) {
    } else {
    }
    if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	eval 'sub __cpp_lib_shared_ptr_weak_type () {201606;}' unless defined(&__cpp_lib_shared_ptr_weak_type);
    }
    if((defined(&__cplusplus) ? &__cplusplus : undef) > 201703) {
    }
    if((defined(&_GLIBCXX_USE_DEPRECATED) ? &_GLIBCXX_USE_DEPRECATED : undef)) {
    }
    if((defined(&__cplusplus) ? &__cplusplus : undef) <= 201402  && (defined(&_GLIBCXX_USE_DEPRECATED) ? &_GLIBCXX_USE_DEPRECATED : undef)) {
    }
    if((defined(&_GLIBCXX_USE_DEPRECATED) ? &_GLIBCXX_USE_DEPRECATED : undef)) {
    }
    if((defined(&__cpp_deduction_guides) ? &__cpp_deduction_guides : undef) >= 201606) {
    }
    if(defined(&__cpp_lib_three_way_comparison)) {
    } else {
    }
    if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
	if((defined(&__cplusplus) ? &__cplusplus : undef) > 201703) {
	}
    }
    if((defined(&__cpp_deduction_guides) ? &__cpp_deduction_guides : undef) >= 201606) {
    }
    if((defined(&__cplusplus) ? &__cplusplus : undef) > 201402 || !defined(&__STRICT_ANSI__) ) {
	eval 'sub __cpp_lib_enable_shared_from_this () {201603;}' unless defined(&__cpp_lib_enable_shared_from_this);
    }
    if((defined(&__cplusplus) ? &__cplusplus : undef) >= 201703) {
    }
}
1;
