comparison Python/Python-ast.c @ 84853:9d26379db328

(Merge 3.3) Parser/asdl_c.py: use Py_CLEAR()
author Victor Stinner <victor.stinner@gmail.com>
date Sat, 27 Jul 2013 00:04:42 +0200
parents 1b464f8453a4 d14f40c87438
children ad90fc28769a
comparison
equal deleted inserted replaced
84851:1b464f8453a4 84853:9d26379db328
3614 stmt_ty value; 3614 stmt_ty value;
3615 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 3615 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
3616 if (res != 0) goto failed; 3616 if (res != 0) goto failed;
3617 asdl_seq_SET(body, i, value); 3617 asdl_seq_SET(body, i, value);
3618 } 3618 }
3619 Py_XDECREF(tmp); 3619 Py_CLEAR(tmp);
3620 tmp = NULL;
3621 } else { 3620 } else {
3622 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from Module"); 3621 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from Module");
3623 return 1; 3622 return 1;
3624 } 3623 }
3625 *out = Module(body, arena); 3624 *out = Module(body, arena);
3650 stmt_ty value; 3649 stmt_ty value;
3651 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 3650 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
3652 if (res != 0) goto failed; 3651 if (res != 0) goto failed;
3653 asdl_seq_SET(body, i, value); 3652 asdl_seq_SET(body, i, value);
3654 } 3653 }
3655 Py_XDECREF(tmp); 3654 Py_CLEAR(tmp);
3656 tmp = NULL;
3657 } else { 3655 } else {
3658 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from Interactive"); 3656 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from Interactive");
3659 return 1; 3657 return 1;
3660 } 3658 }
3661 *out = Interactive(body, arena); 3659 *out = Interactive(body, arena);
3673 int res; 3671 int res;
3674 tmp = _PyObject_GetAttrId(obj, &PyId_body); 3672 tmp = _PyObject_GetAttrId(obj, &PyId_body);
3675 if (tmp == NULL) goto failed; 3673 if (tmp == NULL) goto failed;
3676 res = obj2ast_expr(tmp, &body, arena); 3674 res = obj2ast_expr(tmp, &body, arena);
3677 if (res != 0) goto failed; 3675 if (res != 0) goto failed;
3678 Py_XDECREF(tmp); 3676 Py_CLEAR(tmp);
3679 tmp = NULL;
3680 } else { 3677 } else {
3681 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from Expression"); 3678 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from Expression");
3682 return 1; 3679 return 1;
3683 } 3680 }
3684 *out = Expression(body, arena); 3681 *out = Expression(body, arena);
3709 stmt_ty value; 3706 stmt_ty value;
3710 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 3707 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
3711 if (res != 0) goto failed; 3708 if (res != 0) goto failed;
3712 asdl_seq_SET(body, i, value); 3709 asdl_seq_SET(body, i, value);
3713 } 3710 }
3714 Py_XDECREF(tmp); 3711 Py_CLEAR(tmp);
3715 tmp = NULL;
3716 } else { 3712 } else {
3717 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from Suite"); 3713 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from Suite");
3718 return 1; 3714 return 1;
3719 } 3715 }
3720 *out = Suite(body, arena); 3716 *out = Suite(body, arena);
3745 int res; 3741 int res;
3746 tmp = _PyObject_GetAttrId(obj, &PyId_lineno); 3742 tmp = _PyObject_GetAttrId(obj, &PyId_lineno);
3747 if (tmp == NULL) goto failed; 3743 if (tmp == NULL) goto failed;
3748 res = obj2ast_int(tmp, &lineno, arena); 3744 res = obj2ast_int(tmp, &lineno, arena);
3749 if (res != 0) goto failed; 3745 if (res != 0) goto failed;
3750 Py_XDECREF(tmp); 3746 Py_CLEAR(tmp);
3751 tmp = NULL;
3752 } else { 3747 } else {
3753 PyErr_SetString(PyExc_TypeError, "required field \"lineno\" missing from stmt"); 3748 PyErr_SetString(PyExc_TypeError, "required field \"lineno\" missing from stmt");
3754 return 1; 3749 return 1;
3755 } 3750 }
3756 if (_PyObject_HasAttrId(obj, &PyId_col_offset)) { 3751 if (_PyObject_HasAttrId(obj, &PyId_col_offset)) {
3757 int res; 3752 int res;
3758 tmp = _PyObject_GetAttrId(obj, &PyId_col_offset); 3753 tmp = _PyObject_GetAttrId(obj, &PyId_col_offset);
3759 if (tmp == NULL) goto failed; 3754 if (tmp == NULL) goto failed;
3760 res = obj2ast_int(tmp, &col_offset, arena); 3755 res = obj2ast_int(tmp, &col_offset, arena);
3761 if (res != 0) goto failed; 3756 if (res != 0) goto failed;
3762 Py_XDECREF(tmp); 3757 Py_CLEAR(tmp);
3763 tmp = NULL;
3764 } else { 3758 } else {
3765 PyErr_SetString(PyExc_TypeError, "required field \"col_offset\" missing from stmt"); 3759 PyErr_SetString(PyExc_TypeError, "required field \"col_offset\" missing from stmt");
3766 return 1; 3760 return 1;
3767 } 3761 }
3768 isinstance = PyObject_IsInstance(obj, (PyObject*)FunctionDef_type); 3762 isinstance = PyObject_IsInstance(obj, (PyObject*)FunctionDef_type);
3780 int res; 3774 int res;
3781 tmp = _PyObject_GetAttrId(obj, &PyId_name); 3775 tmp = _PyObject_GetAttrId(obj, &PyId_name);
3782 if (tmp == NULL) goto failed; 3776 if (tmp == NULL) goto failed;
3783 res = obj2ast_identifier(tmp, &name, arena); 3777 res = obj2ast_identifier(tmp, &name, arena);
3784 if (res != 0) goto failed; 3778 if (res != 0) goto failed;
3785 Py_XDECREF(tmp); 3779 Py_CLEAR(tmp);
3786 tmp = NULL;
3787 } else { 3780 } else {
3788 PyErr_SetString(PyExc_TypeError, "required field \"name\" missing from FunctionDef"); 3781 PyErr_SetString(PyExc_TypeError, "required field \"name\" missing from FunctionDef");
3789 return 1; 3782 return 1;
3790 } 3783 }
3791 if (_PyObject_HasAttrId(obj, &PyId_args)) { 3784 if (_PyObject_HasAttrId(obj, &PyId_args)) {
3792 int res; 3785 int res;
3793 tmp = _PyObject_GetAttrId(obj, &PyId_args); 3786 tmp = _PyObject_GetAttrId(obj, &PyId_args);
3794 if (tmp == NULL) goto failed; 3787 if (tmp == NULL) goto failed;
3795 res = obj2ast_arguments(tmp, &args, arena); 3788 res = obj2ast_arguments(tmp, &args, arena);
3796 if (res != 0) goto failed; 3789 if (res != 0) goto failed;
3797 Py_XDECREF(tmp); 3790 Py_CLEAR(tmp);
3798 tmp = NULL;
3799 } else { 3791 } else {
3800 PyErr_SetString(PyExc_TypeError, "required field \"args\" missing from FunctionDef"); 3792 PyErr_SetString(PyExc_TypeError, "required field \"args\" missing from FunctionDef");
3801 return 1; 3793 return 1;
3802 } 3794 }
3803 if (_PyObject_HasAttrId(obj, &PyId_body)) { 3795 if (_PyObject_HasAttrId(obj, &PyId_body)) {
3817 stmt_ty value; 3809 stmt_ty value;
3818 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 3810 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
3819 if (res != 0) goto failed; 3811 if (res != 0) goto failed;
3820 asdl_seq_SET(body, i, value); 3812 asdl_seq_SET(body, i, value);
3821 } 3813 }
3822 Py_XDECREF(tmp); 3814 Py_CLEAR(tmp);
3823 tmp = NULL;
3824 } else { 3815 } else {
3825 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from FunctionDef"); 3816 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from FunctionDef");
3826 return 1; 3817 return 1;
3827 } 3818 }
3828 if (_PyObject_HasAttrId(obj, &PyId_decorator_list)) { 3819 if (_PyObject_HasAttrId(obj, &PyId_decorator_list)) {
3842 expr_ty value; 3833 expr_ty value;
3843 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 3834 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
3844 if (res != 0) goto failed; 3835 if (res != 0) goto failed;
3845 asdl_seq_SET(decorator_list, i, value); 3836 asdl_seq_SET(decorator_list, i, value);
3846 } 3837 }
3847 Py_XDECREF(tmp); 3838 Py_CLEAR(tmp);
3848 tmp = NULL;
3849 } else { 3839 } else {
3850 PyErr_SetString(PyExc_TypeError, "required field \"decorator_list\" missing from FunctionDef"); 3840 PyErr_SetString(PyExc_TypeError, "required field \"decorator_list\" missing from FunctionDef");
3851 return 1; 3841 return 1;
3852 } 3842 }
3853 if (exists_not_none(obj, &PyId_returns)) { 3843 if (exists_not_none(obj, &PyId_returns)) {
3854 int res; 3844 int res;
3855 tmp = _PyObject_GetAttrId(obj, &PyId_returns); 3845 tmp = _PyObject_GetAttrId(obj, &PyId_returns);
3856 if (tmp == NULL) goto failed; 3846 if (tmp == NULL) goto failed;
3857 res = obj2ast_expr(tmp, &returns, arena); 3847 res = obj2ast_expr(tmp, &returns, arena);
3858 if (res != 0) goto failed; 3848 if (res != 0) goto failed;
3859 Py_XDECREF(tmp); 3849 Py_CLEAR(tmp);
3860 tmp = NULL;
3861 } else { 3850 } else {
3862 returns = NULL; 3851 returns = NULL;
3863 } 3852 }
3864 *out = FunctionDef(name, args, body, decorator_list, returns, lineno, 3853 *out = FunctionDef(name, args, body, decorator_list, returns, lineno,
3865 col_offset, arena); 3854 col_offset, arena);
3883 int res; 3872 int res;
3884 tmp = _PyObject_GetAttrId(obj, &PyId_name); 3873 tmp = _PyObject_GetAttrId(obj, &PyId_name);
3885 if (tmp == NULL) goto failed; 3874 if (tmp == NULL) goto failed;
3886 res = obj2ast_identifier(tmp, &name, arena); 3875 res = obj2ast_identifier(tmp, &name, arena);
3887 if (res != 0) goto failed; 3876 if (res != 0) goto failed;
3888 Py_XDECREF(tmp); 3877 Py_CLEAR(tmp);
3889 tmp = NULL;
3890 } else { 3878 } else {
3891 PyErr_SetString(PyExc_TypeError, "required field \"name\" missing from ClassDef"); 3879 PyErr_SetString(PyExc_TypeError, "required field \"name\" missing from ClassDef");
3892 return 1; 3880 return 1;
3893 } 3881 }
3894 if (_PyObject_HasAttrId(obj, &PyId_bases)) { 3882 if (_PyObject_HasAttrId(obj, &PyId_bases)) {
3908 expr_ty value; 3896 expr_ty value;
3909 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 3897 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
3910 if (res != 0) goto failed; 3898 if (res != 0) goto failed;
3911 asdl_seq_SET(bases, i, value); 3899 asdl_seq_SET(bases, i, value);
3912 } 3900 }
3913 Py_XDECREF(tmp); 3901 Py_CLEAR(tmp);
3914 tmp = NULL;
3915 } else { 3902 } else {
3916 PyErr_SetString(PyExc_TypeError, "required field \"bases\" missing from ClassDef"); 3903 PyErr_SetString(PyExc_TypeError, "required field \"bases\" missing from ClassDef");
3917 return 1; 3904 return 1;
3918 } 3905 }
3919 if (_PyObject_HasAttrId(obj, &PyId_keywords)) { 3906 if (_PyObject_HasAttrId(obj, &PyId_keywords)) {
3933 keyword_ty value; 3920 keyword_ty value;
3934 res = obj2ast_keyword(PyList_GET_ITEM(tmp, i), &value, arena); 3921 res = obj2ast_keyword(PyList_GET_ITEM(tmp, i), &value, arena);
3935 if (res != 0) goto failed; 3922 if (res != 0) goto failed;
3936 asdl_seq_SET(keywords, i, value); 3923 asdl_seq_SET(keywords, i, value);
3937 } 3924 }
3938 Py_XDECREF(tmp); 3925 Py_CLEAR(tmp);
3939 tmp = NULL;
3940 } else { 3926 } else {
3941 PyErr_SetString(PyExc_TypeError, "required field \"keywords\" missing from ClassDef"); 3927 PyErr_SetString(PyExc_TypeError, "required field \"keywords\" missing from ClassDef");
3942 return 1; 3928 return 1;
3943 } 3929 }
3944 if (exists_not_none(obj, &PyId_starargs)) { 3930 if (exists_not_none(obj, &PyId_starargs)) {
3945 int res; 3931 int res;
3946 tmp = _PyObject_GetAttrId(obj, &PyId_starargs); 3932 tmp = _PyObject_GetAttrId(obj, &PyId_starargs);
3947 if (tmp == NULL) goto failed; 3933 if (tmp == NULL) goto failed;
3948 res = obj2ast_expr(tmp, &starargs, arena); 3934 res = obj2ast_expr(tmp, &starargs, arena);
3949 if (res != 0) goto failed; 3935 if (res != 0) goto failed;
3950 Py_XDECREF(tmp); 3936 Py_CLEAR(tmp);
3951 tmp = NULL;
3952 } else { 3937 } else {
3953 starargs = NULL; 3938 starargs = NULL;
3954 } 3939 }
3955 if (exists_not_none(obj, &PyId_kwargs)) { 3940 if (exists_not_none(obj, &PyId_kwargs)) {
3956 int res; 3941 int res;
3957 tmp = _PyObject_GetAttrId(obj, &PyId_kwargs); 3942 tmp = _PyObject_GetAttrId(obj, &PyId_kwargs);
3958 if (tmp == NULL) goto failed; 3943 if (tmp == NULL) goto failed;
3959 res = obj2ast_expr(tmp, &kwargs, arena); 3944 res = obj2ast_expr(tmp, &kwargs, arena);
3960 if (res != 0) goto failed; 3945 if (res != 0) goto failed;
3961 Py_XDECREF(tmp); 3946 Py_CLEAR(tmp);
3962 tmp = NULL;
3963 } else { 3947 } else {
3964 kwargs = NULL; 3948 kwargs = NULL;
3965 } 3949 }
3966 if (_PyObject_HasAttrId(obj, &PyId_body)) { 3950 if (_PyObject_HasAttrId(obj, &PyId_body)) {
3967 int res; 3951 int res;
3980 stmt_ty value; 3964 stmt_ty value;
3981 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 3965 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
3982 if (res != 0) goto failed; 3966 if (res != 0) goto failed;
3983 asdl_seq_SET(body, i, value); 3967 asdl_seq_SET(body, i, value);
3984 } 3968 }
3985 Py_XDECREF(tmp); 3969 Py_CLEAR(tmp);
3986 tmp = NULL;
3987 } else { 3970 } else {
3988 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from ClassDef"); 3971 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from ClassDef");
3989 return 1; 3972 return 1;
3990 } 3973 }
3991 if (_PyObject_HasAttrId(obj, &PyId_decorator_list)) { 3974 if (_PyObject_HasAttrId(obj, &PyId_decorator_list)) {
4005 expr_ty value; 3988 expr_ty value;
4006 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 3989 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
4007 if (res != 0) goto failed; 3990 if (res != 0) goto failed;
4008 asdl_seq_SET(decorator_list, i, value); 3991 asdl_seq_SET(decorator_list, i, value);
4009 } 3992 }
4010 Py_XDECREF(tmp); 3993 Py_CLEAR(tmp);
4011 tmp = NULL;
4012 } else { 3994 } else {
4013 PyErr_SetString(PyExc_TypeError, "required field \"decorator_list\" missing from ClassDef"); 3995 PyErr_SetString(PyExc_TypeError, "required field \"decorator_list\" missing from ClassDef");
4014 return 1; 3996 return 1;
4015 } 3997 }
4016 *out = ClassDef(name, bases, keywords, starargs, kwargs, body, 3998 *out = ClassDef(name, bases, keywords, starargs, kwargs, body,
4029 int res; 4011 int res;
4030 tmp = _PyObject_GetAttrId(obj, &PyId_value); 4012 tmp = _PyObject_GetAttrId(obj, &PyId_value);
4031 if (tmp == NULL) goto failed; 4013 if (tmp == NULL) goto failed;
4032 res = obj2ast_expr(tmp, &value, arena); 4014 res = obj2ast_expr(tmp, &value, arena);
4033 if (res != 0) goto failed; 4015 if (res != 0) goto failed;
4034 Py_XDECREF(tmp); 4016 Py_CLEAR(tmp);
4035 tmp = NULL;
4036 } else { 4017 } else {
4037 value = NULL; 4018 value = NULL;
4038 } 4019 }
4039 *out = Return(value, lineno, col_offset, arena); 4020 *out = Return(value, lineno, col_offset, arena);
4040 if (*out == NULL) goto failed; 4021 if (*out == NULL) goto failed;
4064 expr_ty value; 4045 expr_ty value;
4065 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 4046 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
4066 if (res != 0) goto failed; 4047 if (res != 0) goto failed;
4067 asdl_seq_SET(targets, i, value); 4048 asdl_seq_SET(targets, i, value);
4068 } 4049 }
4069 Py_XDECREF(tmp); 4050 Py_CLEAR(tmp);
4070 tmp = NULL;
4071 } else { 4051 } else {
4072 PyErr_SetString(PyExc_TypeError, "required field \"targets\" missing from Delete"); 4052 PyErr_SetString(PyExc_TypeError, "required field \"targets\" missing from Delete");
4073 return 1; 4053 return 1;
4074 } 4054 }
4075 *out = Delete(targets, lineno, col_offset, arena); 4055 *out = Delete(targets, lineno, col_offset, arena);
4101 expr_ty value; 4081 expr_ty value;
4102 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 4082 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
4103 if (res != 0) goto failed; 4083 if (res != 0) goto failed;
4104 asdl_seq_SET(targets, i, value); 4084 asdl_seq_SET(targets, i, value);
4105 } 4085 }
4106 Py_XDECREF(tmp); 4086 Py_CLEAR(tmp);
4107 tmp = NULL;
4108 } else { 4087 } else {
4109 PyErr_SetString(PyExc_TypeError, "required field \"targets\" missing from Assign"); 4088 PyErr_SetString(PyExc_TypeError, "required field \"targets\" missing from Assign");
4110 return 1; 4089 return 1;
4111 } 4090 }
4112 if (_PyObject_HasAttrId(obj, &PyId_value)) { 4091 if (_PyObject_HasAttrId(obj, &PyId_value)) {
4113 int res; 4092 int res;
4114 tmp = _PyObject_GetAttrId(obj, &PyId_value); 4093 tmp = _PyObject_GetAttrId(obj, &PyId_value);
4115 if (tmp == NULL) goto failed; 4094 if (tmp == NULL) goto failed;
4116 res = obj2ast_expr(tmp, &value, arena); 4095 res = obj2ast_expr(tmp, &value, arena);
4117 if (res != 0) goto failed; 4096 if (res != 0) goto failed;
4118 Py_XDECREF(tmp); 4097 Py_CLEAR(tmp);
4119 tmp = NULL;
4120 } else { 4098 } else {
4121 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Assign"); 4099 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Assign");
4122 return 1; 4100 return 1;
4123 } 4101 }
4124 *out = Assign(targets, value, lineno, col_offset, arena); 4102 *out = Assign(targets, value, lineno, col_offset, arena);
4138 int res; 4116 int res;
4139 tmp = _PyObject_GetAttrId(obj, &PyId_target); 4117 tmp = _PyObject_GetAttrId(obj, &PyId_target);
4140 if (tmp == NULL) goto failed; 4118 if (tmp == NULL) goto failed;
4141 res = obj2ast_expr(tmp, &target, arena); 4119 res = obj2ast_expr(tmp, &target, arena);
4142 if (res != 0) goto failed; 4120 if (res != 0) goto failed;
4143 Py_XDECREF(tmp); 4121 Py_CLEAR(tmp);
4144 tmp = NULL;
4145 } else { 4122 } else {
4146 PyErr_SetString(PyExc_TypeError, "required field \"target\" missing from AugAssign"); 4123 PyErr_SetString(PyExc_TypeError, "required field \"target\" missing from AugAssign");
4147 return 1; 4124 return 1;
4148 } 4125 }
4149 if (_PyObject_HasAttrId(obj, &PyId_op)) { 4126 if (_PyObject_HasAttrId(obj, &PyId_op)) {
4150 int res; 4127 int res;
4151 tmp = _PyObject_GetAttrId(obj, &PyId_op); 4128 tmp = _PyObject_GetAttrId(obj, &PyId_op);
4152 if (tmp == NULL) goto failed; 4129 if (tmp == NULL) goto failed;
4153 res = obj2ast_operator(tmp, &op, arena); 4130 res = obj2ast_operator(tmp, &op, arena);
4154 if (res != 0) goto failed; 4131 if (res != 0) goto failed;
4155 Py_XDECREF(tmp); 4132 Py_CLEAR(tmp);
4156 tmp = NULL;
4157 } else { 4133 } else {
4158 PyErr_SetString(PyExc_TypeError, "required field \"op\" missing from AugAssign"); 4134 PyErr_SetString(PyExc_TypeError, "required field \"op\" missing from AugAssign");
4159 return 1; 4135 return 1;
4160 } 4136 }
4161 if (_PyObject_HasAttrId(obj, &PyId_value)) { 4137 if (_PyObject_HasAttrId(obj, &PyId_value)) {
4162 int res; 4138 int res;
4163 tmp = _PyObject_GetAttrId(obj, &PyId_value); 4139 tmp = _PyObject_GetAttrId(obj, &PyId_value);
4164 if (tmp == NULL) goto failed; 4140 if (tmp == NULL) goto failed;
4165 res = obj2ast_expr(tmp, &value, arena); 4141 res = obj2ast_expr(tmp, &value, arena);
4166 if (res != 0) goto failed; 4142 if (res != 0) goto failed;
4167 Py_XDECREF(tmp); 4143 Py_CLEAR(tmp);
4168 tmp = NULL;
4169 } else { 4144 } else {
4170 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from AugAssign"); 4145 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from AugAssign");
4171 return 1; 4146 return 1;
4172 } 4147 }
4173 *out = AugAssign(target, op, value, lineno, col_offset, arena); 4148 *out = AugAssign(target, op, value, lineno, col_offset, arena);
4188 int res; 4163 int res;
4189 tmp = _PyObject_GetAttrId(obj, &PyId_target); 4164 tmp = _PyObject_GetAttrId(obj, &PyId_target);
4190 if (tmp == NULL) goto failed; 4165 if (tmp == NULL) goto failed;
4191 res = obj2ast_expr(tmp, &target, arena); 4166 res = obj2ast_expr(tmp, &target, arena);
4192 if (res != 0) goto failed; 4167 if (res != 0) goto failed;
4193 Py_XDECREF(tmp); 4168 Py_CLEAR(tmp);
4194 tmp = NULL;
4195 } else { 4169 } else {
4196 PyErr_SetString(PyExc_TypeError, "required field \"target\" missing from For"); 4170 PyErr_SetString(PyExc_TypeError, "required field \"target\" missing from For");
4197 return 1; 4171 return 1;
4198 } 4172 }
4199 if (_PyObject_HasAttrId(obj, &PyId_iter)) { 4173 if (_PyObject_HasAttrId(obj, &PyId_iter)) {
4200 int res; 4174 int res;
4201 tmp = _PyObject_GetAttrId(obj, &PyId_iter); 4175 tmp = _PyObject_GetAttrId(obj, &PyId_iter);
4202 if (tmp == NULL) goto failed; 4176 if (tmp == NULL) goto failed;
4203 res = obj2ast_expr(tmp, &iter, arena); 4177 res = obj2ast_expr(tmp, &iter, arena);
4204 if (res != 0) goto failed; 4178 if (res != 0) goto failed;
4205 Py_XDECREF(tmp); 4179 Py_CLEAR(tmp);
4206 tmp = NULL;
4207 } else { 4180 } else {
4208 PyErr_SetString(PyExc_TypeError, "required field \"iter\" missing from For"); 4181 PyErr_SetString(PyExc_TypeError, "required field \"iter\" missing from For");
4209 return 1; 4182 return 1;
4210 } 4183 }
4211 if (_PyObject_HasAttrId(obj, &PyId_body)) { 4184 if (_PyObject_HasAttrId(obj, &PyId_body)) {
4225 stmt_ty value; 4198 stmt_ty value;
4226 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 4199 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
4227 if (res != 0) goto failed; 4200 if (res != 0) goto failed;
4228 asdl_seq_SET(body, i, value); 4201 asdl_seq_SET(body, i, value);
4229 } 4202 }
4230 Py_XDECREF(tmp); 4203 Py_CLEAR(tmp);
4231 tmp = NULL;
4232 } else { 4204 } else {
4233 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from For"); 4205 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from For");
4234 return 1; 4206 return 1;
4235 } 4207 }
4236 if (_PyObject_HasAttrId(obj, &PyId_orelse)) { 4208 if (_PyObject_HasAttrId(obj, &PyId_orelse)) {
4250 stmt_ty value; 4222 stmt_ty value;
4251 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 4223 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
4252 if (res != 0) goto failed; 4224 if (res != 0) goto failed;
4253 asdl_seq_SET(orelse, i, value); 4225 asdl_seq_SET(orelse, i, value);
4254 } 4226 }
4255 Py_XDECREF(tmp); 4227 Py_CLEAR(tmp);
4256 tmp = NULL;
4257 } else { 4228 } else {
4258 PyErr_SetString(PyExc_TypeError, "required field \"orelse\" missing from For"); 4229 PyErr_SetString(PyExc_TypeError, "required field \"orelse\" missing from For");
4259 return 1; 4230 return 1;
4260 } 4231 }
4261 *out = For(target, iter, body, orelse, lineno, col_offset, arena); 4232 *out = For(target, iter, body, orelse, lineno, col_offset, arena);
4275 int res; 4246 int res;
4276 tmp = _PyObject_GetAttrId(obj, &PyId_test); 4247 tmp = _PyObject_GetAttrId(obj, &PyId_test);
4277 if (tmp == NULL) goto failed; 4248 if (tmp == NULL) goto failed;
4278 res = obj2ast_expr(tmp, &test, arena); 4249 res = obj2ast_expr(tmp, &test, arena);
4279 if (res != 0) goto failed; 4250 if (res != 0) goto failed;
4280 Py_XDECREF(tmp); 4251 Py_CLEAR(tmp);
4281 tmp = NULL;
4282 } else { 4252 } else {
4283 PyErr_SetString(PyExc_TypeError, "required field \"test\" missing from While"); 4253 PyErr_SetString(PyExc_TypeError, "required field \"test\" missing from While");
4284 return 1; 4254 return 1;
4285 } 4255 }
4286 if (_PyObject_HasAttrId(obj, &PyId_body)) { 4256 if (_PyObject_HasAttrId(obj, &PyId_body)) {
4300 stmt_ty value; 4270 stmt_ty value;
4301 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 4271 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
4302 if (res != 0) goto failed; 4272 if (res != 0) goto failed;
4303 asdl_seq_SET(body, i, value); 4273 asdl_seq_SET(body, i, value);
4304 } 4274 }
4305 Py_XDECREF(tmp); 4275 Py_CLEAR(tmp);
4306 tmp = NULL;
4307 } else { 4276 } else {
4308 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from While"); 4277 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from While");
4309 return 1; 4278 return 1;
4310 } 4279 }
4311 if (_PyObject_HasAttrId(obj, &PyId_orelse)) { 4280 if (_PyObject_HasAttrId(obj, &PyId_orelse)) {
4325 stmt_ty value; 4294 stmt_ty value;
4326 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 4295 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
4327 if (res != 0) goto failed; 4296 if (res != 0) goto failed;
4328 asdl_seq_SET(orelse, i, value); 4297 asdl_seq_SET(orelse, i, value);
4329 } 4298 }
4330 Py_XDECREF(tmp); 4299 Py_CLEAR(tmp);
4331 tmp = NULL;
4332 } else { 4300 } else {
4333 PyErr_SetString(PyExc_TypeError, "required field \"orelse\" missing from While"); 4301 PyErr_SetString(PyExc_TypeError, "required field \"orelse\" missing from While");
4334 return 1; 4302 return 1;
4335 } 4303 }
4336 *out = While(test, body, orelse, lineno, col_offset, arena); 4304 *out = While(test, body, orelse, lineno, col_offset, arena);
4350 int res; 4318 int res;
4351 tmp = _PyObject_GetAttrId(obj, &PyId_test); 4319 tmp = _PyObject_GetAttrId(obj, &PyId_test);
4352 if (tmp == NULL) goto failed; 4320 if (tmp == NULL) goto failed;
4353 res = obj2ast_expr(tmp, &test, arena); 4321 res = obj2ast_expr(tmp, &test, arena);
4354 if (res != 0) goto failed; 4322 if (res != 0) goto failed;
4355 Py_XDECREF(tmp); 4323 Py_CLEAR(tmp);
4356 tmp = NULL;
4357 } else { 4324 } else {
4358 PyErr_SetString(PyExc_TypeError, "required field \"test\" missing from If"); 4325 PyErr_SetString(PyExc_TypeError, "required field \"test\" missing from If");
4359 return 1; 4326 return 1;
4360 } 4327 }
4361 if (_PyObject_HasAttrId(obj, &PyId_body)) { 4328 if (_PyObject_HasAttrId(obj, &PyId_body)) {
4375 stmt_ty value; 4342 stmt_ty value;
4376 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 4343 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
4377 if (res != 0) goto failed; 4344 if (res != 0) goto failed;
4378 asdl_seq_SET(body, i, value); 4345 asdl_seq_SET(body, i, value);
4379 } 4346 }
4380 Py_XDECREF(tmp); 4347 Py_CLEAR(tmp);
4381 tmp = NULL;
4382 } else { 4348 } else {
4383 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from If"); 4349 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from If");
4384 return 1; 4350 return 1;
4385 } 4351 }
4386 if (_PyObject_HasAttrId(obj, &PyId_orelse)) { 4352 if (_PyObject_HasAttrId(obj, &PyId_orelse)) {
4400 stmt_ty value; 4366 stmt_ty value;
4401 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 4367 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
4402 if (res != 0) goto failed; 4368 if (res != 0) goto failed;
4403 asdl_seq_SET(orelse, i, value); 4369 asdl_seq_SET(orelse, i, value);
4404 } 4370 }
4405 Py_XDECREF(tmp); 4371 Py_CLEAR(tmp);
4406 tmp = NULL;
4407 } else { 4372 } else {
4408 PyErr_SetString(PyExc_TypeError, "required field \"orelse\" missing from If"); 4373 PyErr_SetString(PyExc_TypeError, "required field \"orelse\" missing from If");
4409 return 1; 4374 return 1;
4410 } 4375 }
4411 *out = If(test, body, orelse, lineno, col_offset, arena); 4376 *out = If(test, body, orelse, lineno, col_offset, arena);
4437 withitem_ty value; 4402 withitem_ty value;
4438 res = obj2ast_withitem(PyList_GET_ITEM(tmp, i), &value, arena); 4403 res = obj2ast_withitem(PyList_GET_ITEM(tmp, i), &value, arena);
4439 if (res != 0) goto failed; 4404 if (res != 0) goto failed;
4440 asdl_seq_SET(items, i, value); 4405 asdl_seq_SET(items, i, value);
4441 } 4406 }
4442 Py_XDECREF(tmp); 4407 Py_CLEAR(tmp);
4443 tmp = NULL;
4444 } else { 4408 } else {
4445 PyErr_SetString(PyExc_TypeError, "required field \"items\" missing from With"); 4409 PyErr_SetString(PyExc_TypeError, "required field \"items\" missing from With");
4446 return 1; 4410 return 1;
4447 } 4411 }
4448 if (_PyObject_HasAttrId(obj, &PyId_body)) { 4412 if (_PyObject_HasAttrId(obj, &PyId_body)) {
4462 stmt_ty value; 4426 stmt_ty value;
4463 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 4427 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
4464 if (res != 0) goto failed; 4428 if (res != 0) goto failed;
4465 asdl_seq_SET(body, i, value); 4429 asdl_seq_SET(body, i, value);
4466 } 4430 }
4467 Py_XDECREF(tmp); 4431 Py_CLEAR(tmp);
4468 tmp = NULL;
4469 } else { 4432 } else {
4470 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from With"); 4433 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from With");
4471 return 1; 4434 return 1;
4472 } 4435 }
4473 *out = With(items, body, lineno, col_offset, arena); 4436 *out = With(items, body, lineno, col_offset, arena);
4486 int res; 4449 int res;
4487 tmp = _PyObject_GetAttrId(obj, &PyId_exc); 4450 tmp = _PyObject_GetAttrId(obj, &PyId_exc);
4488 if (tmp == NULL) goto failed; 4451 if (tmp == NULL) goto failed;
4489 res = obj2ast_expr(tmp, &exc, arena); 4452 res = obj2ast_expr(tmp, &exc, arena);
4490 if (res != 0) goto failed; 4453 if (res != 0) goto failed;
4491 Py_XDECREF(tmp); 4454 Py_CLEAR(tmp);
4492 tmp = NULL;
4493 } else { 4455 } else {
4494 exc = NULL; 4456 exc = NULL;
4495 } 4457 }
4496 if (exists_not_none(obj, &PyId_cause)) { 4458 if (exists_not_none(obj, &PyId_cause)) {
4497 int res; 4459 int res;
4498 tmp = _PyObject_GetAttrId(obj, &PyId_cause); 4460 tmp = _PyObject_GetAttrId(obj, &PyId_cause);
4499 if (tmp == NULL) goto failed; 4461 if (tmp == NULL) goto failed;
4500 res = obj2ast_expr(tmp, &cause, arena); 4462 res = obj2ast_expr(tmp, &cause, arena);
4501 if (res != 0) goto failed; 4463 if (res != 0) goto failed;
4502 Py_XDECREF(tmp); 4464 Py_CLEAR(tmp);
4503 tmp = NULL;
4504 } else { 4465 } else {
4505 cause = NULL; 4466 cause = NULL;
4506 } 4467 }
4507 *out = Raise(exc, cause, lineno, col_offset, arena); 4468 *out = Raise(exc, cause, lineno, col_offset, arena);
4508 if (*out == NULL) goto failed; 4469 if (*out == NULL) goto failed;
4535 stmt_ty value; 4496 stmt_ty value;
4536 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 4497 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
4537 if (res != 0) goto failed; 4498 if (res != 0) goto failed;
4538 asdl_seq_SET(body, i, value); 4499 asdl_seq_SET(body, i, value);
4539 } 4500 }
4540 Py_XDECREF(tmp); 4501 Py_CLEAR(tmp);
4541 tmp = NULL;
4542 } else { 4502 } else {
4543 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from Try"); 4503 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from Try");
4544 return 1; 4504 return 1;
4545 } 4505 }
4546 if (_PyObject_HasAttrId(obj, &PyId_handlers)) { 4506 if (_PyObject_HasAttrId(obj, &PyId_handlers)) {
4560 excepthandler_ty value; 4520 excepthandler_ty value;
4561 res = obj2ast_excepthandler(PyList_GET_ITEM(tmp, i), &value, arena); 4521 res = obj2ast_excepthandler(PyList_GET_ITEM(tmp, i), &value, arena);
4562 if (res != 0) goto failed; 4522 if (res != 0) goto failed;
4563 asdl_seq_SET(handlers, i, value); 4523 asdl_seq_SET(handlers, i, value);
4564 } 4524 }
4565 Py_XDECREF(tmp); 4525 Py_CLEAR(tmp);
4566 tmp = NULL;
4567 } else { 4526 } else {
4568 PyErr_SetString(PyExc_TypeError, "required field \"handlers\" missing from Try"); 4527 PyErr_SetString(PyExc_TypeError, "required field \"handlers\" missing from Try");
4569 return 1; 4528 return 1;
4570 } 4529 }
4571 if (_PyObject_HasAttrId(obj, &PyId_orelse)) { 4530 if (_PyObject_HasAttrId(obj, &PyId_orelse)) {
4585 stmt_ty value; 4544 stmt_ty value;
4586 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 4545 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
4587 if (res != 0) goto failed; 4546 if (res != 0) goto failed;
4588 asdl_seq_SET(orelse, i, value); 4547 asdl_seq_SET(orelse, i, value);
4589 } 4548 }
4590 Py_XDECREF(tmp); 4549 Py_CLEAR(tmp);
4591 tmp = NULL;
4592 } else { 4550 } else {
4593 PyErr_SetString(PyExc_TypeError, "required field \"orelse\" missing from Try"); 4551 PyErr_SetString(PyExc_TypeError, "required field \"orelse\" missing from Try");
4594 return 1; 4552 return 1;
4595 } 4553 }
4596 if (_PyObject_HasAttrId(obj, &PyId_finalbody)) { 4554 if (_PyObject_HasAttrId(obj, &PyId_finalbody)) {
4610 stmt_ty value; 4568 stmt_ty value;
4611 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 4569 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
4612 if (res != 0) goto failed; 4570 if (res != 0) goto failed;
4613 asdl_seq_SET(finalbody, i, value); 4571 asdl_seq_SET(finalbody, i, value);
4614 } 4572 }
4615 Py_XDECREF(tmp); 4573 Py_CLEAR(tmp);
4616 tmp = NULL;
4617 } else { 4574 } else {
4618 PyErr_SetString(PyExc_TypeError, "required field \"finalbody\" missing from Try"); 4575 PyErr_SetString(PyExc_TypeError, "required field \"finalbody\" missing from Try");
4619 return 1; 4576 return 1;
4620 } 4577 }
4621 *out = Try(body, handlers, orelse, finalbody, lineno, col_offset, 4578 *out = Try(body, handlers, orelse, finalbody, lineno, col_offset,
4635 int res; 4592 int res;
4636 tmp = _PyObject_GetAttrId(obj, &PyId_test); 4593 tmp = _PyObject_GetAttrId(obj, &PyId_test);
4637 if (tmp == NULL) goto failed; 4594 if (tmp == NULL) goto failed;
4638 res = obj2ast_expr(tmp, &test, arena); 4595 res = obj2ast_expr(tmp, &test, arena);
4639 if (res != 0) goto failed; 4596 if (res != 0) goto failed;
4640 Py_XDECREF(tmp); 4597 Py_CLEAR(tmp);
4641 tmp = NULL;
4642 } else { 4598 } else {
4643 PyErr_SetString(PyExc_TypeError, "required field \"test\" missing from Assert"); 4599 PyErr_SetString(PyExc_TypeError, "required field \"test\" missing from Assert");
4644 return 1; 4600 return 1;
4645 } 4601 }
4646 if (exists_not_none(obj, &PyId_msg)) { 4602 if (exists_not_none(obj, &PyId_msg)) {
4647 int res; 4603 int res;
4648 tmp = _PyObject_GetAttrId(obj, &PyId_msg); 4604 tmp = _PyObject_GetAttrId(obj, &PyId_msg);
4649 if (tmp == NULL) goto failed; 4605 if (tmp == NULL) goto failed;
4650 res = obj2ast_expr(tmp, &msg, arena); 4606 res = obj2ast_expr(tmp, &msg, arena);
4651 if (res != 0) goto failed; 4607 if (res != 0) goto failed;
4652 Py_XDECREF(tmp); 4608 Py_CLEAR(tmp);
4653 tmp = NULL;
4654 } else { 4609 } else {
4655 msg = NULL; 4610 msg = NULL;
4656 } 4611 }
4657 *out = Assert(test, msg, lineno, col_offset, arena); 4612 *out = Assert(test, msg, lineno, col_offset, arena);
4658 if (*out == NULL) goto failed; 4613 if (*out == NULL) goto failed;
4682 alias_ty value; 4637 alias_ty value;
4683 res = obj2ast_alias(PyList_GET_ITEM(tmp, i), &value, arena); 4638 res = obj2ast_alias(PyList_GET_ITEM(tmp, i), &value, arena);
4684 if (res != 0) goto failed; 4639 if (res != 0) goto failed;
4685 asdl_seq_SET(names, i, value); 4640 asdl_seq_SET(names, i, value);
4686 } 4641 }
4687 Py_XDECREF(tmp); 4642 Py_CLEAR(tmp);
4688 tmp = NULL;
4689 } else { 4643 } else {
4690 PyErr_SetString(PyExc_TypeError, "required field \"names\" missing from Import"); 4644 PyErr_SetString(PyExc_TypeError, "required field \"names\" missing from Import");
4691 return 1; 4645 return 1;
4692 } 4646 }
4693 *out = Import(names, lineno, col_offset, arena); 4647 *out = Import(names, lineno, col_offset, arena);
4707 int res; 4661 int res;
4708 tmp = _PyObject_GetAttrId(obj, &PyId_module); 4662 tmp = _PyObject_GetAttrId(obj, &PyId_module);
4709 if (tmp == NULL) goto failed; 4663 if (tmp == NULL) goto failed;
4710 res = obj2ast_identifier(tmp, &module, arena); 4664 res = obj2ast_identifier(tmp, &module, arena);
4711 if (res != 0) goto failed; 4665 if (res != 0) goto failed;
4712 Py_XDECREF(tmp); 4666 Py_CLEAR(tmp);
4713 tmp = NULL;
4714 } else { 4667 } else {
4715 module = NULL; 4668 module = NULL;
4716 } 4669 }
4717 if (_PyObject_HasAttrId(obj, &PyId_names)) { 4670 if (_PyObject_HasAttrId(obj, &PyId_names)) {
4718 int res; 4671 int res;
4731 alias_ty value; 4684 alias_ty value;
4732 res = obj2ast_alias(PyList_GET_ITEM(tmp, i), &value, arena); 4685 res = obj2ast_alias(PyList_GET_ITEM(tmp, i), &value, arena);
4733 if (res != 0) goto failed; 4686 if (res != 0) goto failed;
4734 asdl_seq_SET(names, i, value); 4687 asdl_seq_SET(names, i, value);
4735 } 4688 }
4736 Py_XDECREF(tmp); 4689 Py_CLEAR(tmp);
4737 tmp = NULL;
4738 } else { 4690 } else {
4739 PyErr_SetString(PyExc_TypeError, "required field \"names\" missing from ImportFrom"); 4691 PyErr_SetString(PyExc_TypeError, "required field \"names\" missing from ImportFrom");
4740 return 1; 4692 return 1;
4741 } 4693 }
4742 if (exists_not_none(obj, &PyId_level)) { 4694 if (exists_not_none(obj, &PyId_level)) {
4743 int res; 4695 int res;
4744 tmp = _PyObject_GetAttrId(obj, &PyId_level); 4696 tmp = _PyObject_GetAttrId(obj, &PyId_level);
4745 if (tmp == NULL) goto failed; 4697 if (tmp == NULL) goto failed;
4746 res = obj2ast_int(tmp, &level, arena); 4698 res = obj2ast_int(tmp, &level, arena);
4747 if (res != 0) goto failed; 4699 if (res != 0) goto failed;
4748 Py_XDECREF(tmp); 4700 Py_CLEAR(tmp);
4749 tmp = NULL;
4750 } else { 4701 } else {
4751 level = 0; 4702 level = 0;
4752 } 4703 }
4753 *out = ImportFrom(module, names, level, lineno, col_offset, arena); 4704 *out = ImportFrom(module, names, level, lineno, col_offset, arena);
4754 if (*out == NULL) goto failed; 4705 if (*out == NULL) goto failed;
4778 identifier value; 4729 identifier value;
4779 res = obj2ast_identifier(PyList_GET_ITEM(tmp, i), &value, arena); 4730 res = obj2ast_identifier(PyList_GET_ITEM(tmp, i), &value, arena);
4780 if (res != 0) goto failed; 4731 if (res != 0) goto failed;
4781 asdl_seq_SET(names, i, value); 4732 asdl_seq_SET(names, i, value);
4782 } 4733 }
4783 Py_XDECREF(tmp); 4734 Py_CLEAR(tmp);
4784 tmp = NULL;
4785 } else { 4735 } else {
4786 PyErr_SetString(PyExc_TypeError, "required field \"names\" missing from Global"); 4736 PyErr_SetString(PyExc_TypeError, "required field \"names\" missing from Global");
4787 return 1; 4737 return 1;
4788 } 4738 }
4789 *out = Global(names, lineno, col_offset, arena); 4739 *out = Global(names, lineno, col_offset, arena);
4814 identifier value; 4764 identifier value;
4815 res = obj2ast_identifier(PyList_GET_ITEM(tmp, i), &value, arena); 4765 res = obj2ast_identifier(PyList_GET_ITEM(tmp, i), &value, arena);
4816 if (res != 0) goto failed; 4766 if (res != 0) goto failed;
4817 asdl_seq_SET(names, i, value); 4767 asdl_seq_SET(names, i, value);
4818 } 4768 }
4819 Py_XDECREF(tmp); 4769 Py_CLEAR(tmp);
4820 tmp = NULL;
4821 } else { 4770 } else {
4822 PyErr_SetString(PyExc_TypeError, "required field \"names\" missing from Nonlocal"); 4771 PyErr_SetString(PyExc_TypeError, "required field \"names\" missing from Nonlocal");
4823 return 1; 4772 return 1;
4824 } 4773 }
4825 *out = Nonlocal(names, lineno, col_offset, arena); 4774 *out = Nonlocal(names, lineno, col_offset, arena);
4837 int res; 4786 int res;
4838 tmp = _PyObject_GetAttrId(obj, &PyId_value); 4787 tmp = _PyObject_GetAttrId(obj, &PyId_value);
4839 if (tmp == NULL) goto failed; 4788 if (tmp == NULL) goto failed;
4840 res = obj2ast_expr(tmp, &value, arena); 4789 res = obj2ast_expr(tmp, &value, arena);
4841 if (res != 0) goto failed; 4790 if (res != 0) goto failed;
4842 Py_XDECREF(tmp); 4791 Py_CLEAR(tmp);
4843 tmp = NULL;
4844 } else { 4792 } else {
4845 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Expr"); 4793 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Expr");
4846 return 1; 4794 return 1;
4847 } 4795 }
4848 *out = Expr(value, lineno, col_offset, arena); 4796 *out = Expr(value, lineno, col_offset, arena);
4903 int res; 4851 int res;
4904 tmp = _PyObject_GetAttrId(obj, &PyId_lineno); 4852 tmp = _PyObject_GetAttrId(obj, &PyId_lineno);
4905 if (tmp == NULL) goto failed; 4853 if (tmp == NULL) goto failed;
4906 res = obj2ast_int(tmp, &lineno, arena); 4854 res = obj2ast_int(tmp, &lineno, arena);
4907 if (res != 0) goto failed; 4855 if (res != 0) goto failed;
4908 Py_XDECREF(tmp); 4856 Py_CLEAR(tmp);
4909 tmp = NULL;
4910 } else { 4857 } else {
4911 PyErr_SetString(PyExc_TypeError, "required field \"lineno\" missing from expr"); 4858 PyErr_SetString(PyExc_TypeError, "required field \"lineno\" missing from expr");
4912 return 1; 4859 return 1;
4913 } 4860 }
4914 if (_PyObject_HasAttrId(obj, &PyId_col_offset)) { 4861 if (_PyObject_HasAttrId(obj, &PyId_col_offset)) {
4915 int res; 4862 int res;
4916 tmp = _PyObject_GetAttrId(obj, &PyId_col_offset); 4863 tmp = _PyObject_GetAttrId(obj, &PyId_col_offset);
4917 if (tmp == NULL) goto failed; 4864 if (tmp == NULL) goto failed;
4918 res = obj2ast_int(tmp, &col_offset, arena); 4865 res = obj2ast_int(tmp, &col_offset, arena);
4919 if (res != 0) goto failed; 4866 if (res != 0) goto failed;
4920 Py_XDECREF(tmp); 4867 Py_CLEAR(tmp);
4921 tmp = NULL;
4922 } else { 4868 } else {
4923 PyErr_SetString(PyExc_TypeError, "required field \"col_offset\" missing from expr"); 4869 PyErr_SetString(PyExc_TypeError, "required field \"col_offset\" missing from expr");
4924 return 1; 4870 return 1;
4925 } 4871 }
4926 isinstance = PyObject_IsInstance(obj, (PyObject*)BoolOp_type); 4872 isinstance = PyObject_IsInstance(obj, (PyObject*)BoolOp_type);
4935 int res; 4881 int res;
4936 tmp = _PyObject_GetAttrId(obj, &PyId_op); 4882 tmp = _PyObject_GetAttrId(obj, &PyId_op);
4937 if (tmp == NULL) goto failed; 4883 if (tmp == NULL) goto failed;
4938 res = obj2ast_boolop(tmp, &op, arena); 4884 res = obj2ast_boolop(tmp, &op, arena);
4939 if (res != 0) goto failed; 4885 if (res != 0) goto failed;
4940 Py_XDECREF(tmp); 4886 Py_CLEAR(tmp);
4941 tmp = NULL;
4942 } else { 4887 } else {
4943 PyErr_SetString(PyExc_TypeError, "required field \"op\" missing from BoolOp"); 4888 PyErr_SetString(PyExc_TypeError, "required field \"op\" missing from BoolOp");
4944 return 1; 4889 return 1;
4945 } 4890 }
4946 if (_PyObject_HasAttrId(obj, &PyId_values)) { 4891 if (_PyObject_HasAttrId(obj, &PyId_values)) {
4960 expr_ty value; 4905 expr_ty value;
4961 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 4906 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
4962 if (res != 0) goto failed; 4907 if (res != 0) goto failed;
4963 asdl_seq_SET(values, i, value); 4908 asdl_seq_SET(values, i, value);
4964 } 4909 }
4965 Py_XDECREF(tmp); 4910 Py_CLEAR(tmp);
4966 tmp = NULL;
4967 } else { 4911 } else {
4968 PyErr_SetString(PyExc_TypeError, "required field \"values\" missing from BoolOp"); 4912 PyErr_SetString(PyExc_TypeError, "required field \"values\" missing from BoolOp");
4969 return 1; 4913 return 1;
4970 } 4914 }
4971 *out = BoolOp(op, values, lineno, col_offset, arena); 4915 *out = BoolOp(op, values, lineno, col_offset, arena);
4985 int res; 4929 int res;
4986 tmp = _PyObject_GetAttrId(obj, &PyId_left); 4930 tmp = _PyObject_GetAttrId(obj, &PyId_left);
4987 if (tmp == NULL) goto failed; 4931 if (tmp == NULL) goto failed;
4988 res = obj2ast_expr(tmp, &left, arena); 4932 res = obj2ast_expr(tmp, &left, arena);
4989 if (res != 0) goto failed; 4933 if (res != 0) goto failed;
4990 Py_XDECREF(tmp); 4934 Py_CLEAR(tmp);
4991 tmp = NULL;
4992 } else { 4935 } else {
4993 PyErr_SetString(PyExc_TypeError, "required field \"left\" missing from BinOp"); 4936 PyErr_SetString(PyExc_TypeError, "required field \"left\" missing from BinOp");
4994 return 1; 4937 return 1;
4995 } 4938 }
4996 if (_PyObject_HasAttrId(obj, &PyId_op)) { 4939 if (_PyObject_HasAttrId(obj, &PyId_op)) {
4997 int res; 4940 int res;
4998 tmp = _PyObject_GetAttrId(obj, &PyId_op); 4941 tmp = _PyObject_GetAttrId(obj, &PyId_op);
4999 if (tmp == NULL) goto failed; 4942 if (tmp == NULL) goto failed;
5000 res = obj2ast_operator(tmp, &op, arena); 4943 res = obj2ast_operator(tmp, &op, arena);
5001 if (res != 0) goto failed; 4944 if (res != 0) goto failed;
5002 Py_XDECREF(tmp); 4945 Py_CLEAR(tmp);
5003 tmp = NULL;
5004 } else { 4946 } else {
5005 PyErr_SetString(PyExc_TypeError, "required field \"op\" missing from BinOp"); 4947 PyErr_SetString(PyExc_TypeError, "required field \"op\" missing from BinOp");
5006 return 1; 4948 return 1;
5007 } 4949 }
5008 if (_PyObject_HasAttrId(obj, &PyId_right)) { 4950 if (_PyObject_HasAttrId(obj, &PyId_right)) {
5009 int res; 4951 int res;
5010 tmp = _PyObject_GetAttrId(obj, &PyId_right); 4952 tmp = _PyObject_GetAttrId(obj, &PyId_right);
5011 if (tmp == NULL) goto failed; 4953 if (tmp == NULL) goto failed;
5012 res = obj2ast_expr(tmp, &right, arena); 4954 res = obj2ast_expr(tmp, &right, arena);
5013 if (res != 0) goto failed; 4955 if (res != 0) goto failed;
5014 Py_XDECREF(tmp); 4956 Py_CLEAR(tmp);
5015 tmp = NULL;
5016 } else { 4957 } else {
5017 PyErr_SetString(PyExc_TypeError, "required field \"right\" missing from BinOp"); 4958 PyErr_SetString(PyExc_TypeError, "required field \"right\" missing from BinOp");
5018 return 1; 4959 return 1;
5019 } 4960 }
5020 *out = BinOp(left, op, right, lineno, col_offset, arena); 4961 *out = BinOp(left, op, right, lineno, col_offset, arena);
5033 int res; 4974 int res;
5034 tmp = _PyObject_GetAttrId(obj, &PyId_op); 4975 tmp = _PyObject_GetAttrId(obj, &PyId_op);
5035 if (tmp == NULL) goto failed; 4976 if (tmp == NULL) goto failed;
5036 res = obj2ast_unaryop(tmp, &op, arena); 4977 res = obj2ast_unaryop(tmp, &op, arena);
5037 if (res != 0) goto failed; 4978 if (res != 0) goto failed;
5038 Py_XDECREF(tmp); 4979 Py_CLEAR(tmp);
5039 tmp = NULL;
5040 } else { 4980 } else {
5041 PyErr_SetString(PyExc_TypeError, "required field \"op\" missing from UnaryOp"); 4981 PyErr_SetString(PyExc_TypeError, "required field \"op\" missing from UnaryOp");
5042 return 1; 4982 return 1;
5043 } 4983 }
5044 if (_PyObject_HasAttrId(obj, &PyId_operand)) { 4984 if (_PyObject_HasAttrId(obj, &PyId_operand)) {
5045 int res; 4985 int res;
5046 tmp = _PyObject_GetAttrId(obj, &PyId_operand); 4986 tmp = _PyObject_GetAttrId(obj, &PyId_operand);
5047 if (tmp == NULL) goto failed; 4987 if (tmp == NULL) goto failed;
5048 res = obj2ast_expr(tmp, &operand, arena); 4988 res = obj2ast_expr(tmp, &operand, arena);
5049 if (res != 0) goto failed; 4989 if (res != 0) goto failed;
5050 Py_XDECREF(tmp); 4990 Py_CLEAR(tmp);
5051 tmp = NULL;
5052 } else { 4991 } else {
5053 PyErr_SetString(PyExc_TypeError, "required field \"operand\" missing from UnaryOp"); 4992 PyErr_SetString(PyExc_TypeError, "required field \"operand\" missing from UnaryOp");
5054 return 1; 4993 return 1;
5055 } 4994 }
5056 *out = UnaryOp(op, operand, lineno, col_offset, arena); 4995 *out = UnaryOp(op, operand, lineno, col_offset, arena);
5069 int res; 5008 int res;
5070 tmp = _PyObject_GetAttrId(obj, &PyId_args); 5009 tmp = _PyObject_GetAttrId(obj, &PyId_args);
5071 if (tmp == NULL) goto failed; 5010 if (tmp == NULL) goto failed;
5072 res = obj2ast_arguments(tmp, &args, arena); 5011 res = obj2ast_arguments(tmp, &args, arena);
5073 if (res != 0) goto failed; 5012 if (res != 0) goto failed;
5074 Py_XDECREF(tmp); 5013 Py_CLEAR(tmp);
5075 tmp = NULL;
5076 } else { 5014 } else {
5077 PyErr_SetString(PyExc_TypeError, "required field \"args\" missing from Lambda"); 5015 PyErr_SetString(PyExc_TypeError, "required field \"args\" missing from Lambda");
5078 return 1; 5016 return 1;
5079 } 5017 }
5080 if (_PyObject_HasAttrId(obj, &PyId_body)) { 5018 if (_PyObject_HasAttrId(obj, &PyId_body)) {
5081 int res; 5019 int res;
5082 tmp = _PyObject_GetAttrId(obj, &PyId_body); 5020 tmp = _PyObject_GetAttrId(obj, &PyId_body);
5083 if (tmp == NULL) goto failed; 5021 if (tmp == NULL) goto failed;
5084 res = obj2ast_expr(tmp, &body, arena); 5022 res = obj2ast_expr(tmp, &body, arena);
5085 if (res != 0) goto failed; 5023 if (res != 0) goto failed;
5086 Py_XDECREF(tmp); 5024 Py_CLEAR(tmp);
5087 tmp = NULL;
5088 } else { 5025 } else {
5089 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from Lambda"); 5026 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from Lambda");
5090 return 1; 5027 return 1;
5091 } 5028 }
5092 *out = Lambda(args, body, lineno, col_offset, arena); 5029 *out = Lambda(args, body, lineno, col_offset, arena);
5106 int res; 5043 int res;
5107 tmp = _PyObject_GetAttrId(obj, &PyId_test); 5044 tmp = _PyObject_GetAttrId(obj, &PyId_test);
5108 if (tmp == NULL) goto failed; 5045 if (tmp == NULL) goto failed;
5109 res = obj2ast_expr(tmp, &test, arena); 5046 res = obj2ast_expr(tmp, &test, arena);
5110 if (res != 0) goto failed; 5047 if (res != 0) goto failed;
5111 Py_XDECREF(tmp); 5048 Py_CLEAR(tmp);
5112 tmp = NULL;
5113 } else { 5049 } else {
5114 PyErr_SetString(PyExc_TypeError, "required field \"test\" missing from IfExp"); 5050 PyErr_SetString(PyExc_TypeError, "required field \"test\" missing from IfExp");
5115 return 1; 5051 return 1;
5116 } 5052 }
5117 if (_PyObject_HasAttrId(obj, &PyId_body)) { 5053 if (_PyObject_HasAttrId(obj, &PyId_body)) {
5118 int res; 5054 int res;
5119 tmp = _PyObject_GetAttrId(obj, &PyId_body); 5055 tmp = _PyObject_GetAttrId(obj, &PyId_body);
5120 if (tmp == NULL) goto failed; 5056 if (tmp == NULL) goto failed;
5121 res = obj2ast_expr(tmp, &body, arena); 5057 res = obj2ast_expr(tmp, &body, arena);
5122 if (res != 0) goto failed; 5058 if (res != 0) goto failed;
5123 Py_XDECREF(tmp); 5059 Py_CLEAR(tmp);
5124 tmp = NULL;
5125 } else { 5060 } else {
5126 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from IfExp"); 5061 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from IfExp");
5127 return 1; 5062 return 1;
5128 } 5063 }
5129 if (_PyObject_HasAttrId(obj, &PyId_orelse)) { 5064 if (_PyObject_HasAttrId(obj, &PyId_orelse)) {
5130 int res; 5065 int res;
5131 tmp = _PyObject_GetAttrId(obj, &PyId_orelse); 5066 tmp = _PyObject_GetAttrId(obj, &PyId_orelse);
5132 if (tmp == NULL) goto failed; 5067 if (tmp == NULL) goto failed;
5133 res = obj2ast_expr(tmp, &orelse, arena); 5068 res = obj2ast_expr(tmp, &orelse, arena);
5134 if (res != 0) goto failed; 5069 if (res != 0) goto failed;
5135 Py_XDECREF(tmp); 5070 Py_CLEAR(tmp);
5136 tmp = NULL;
5137 } else { 5071 } else {
5138 PyErr_SetString(PyExc_TypeError, "required field \"orelse\" missing from IfExp"); 5072 PyErr_SetString(PyExc_TypeError, "required field \"orelse\" missing from IfExp");
5139 return 1; 5073 return 1;
5140 } 5074 }
5141 *out = IfExp(test, body, orelse, lineno, col_offset, arena); 5075 *out = IfExp(test, body, orelse, lineno, col_offset, arena);
5167 expr_ty value; 5101 expr_ty value;
5168 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 5102 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
5169 if (res != 0) goto failed; 5103 if (res != 0) goto failed;
5170 asdl_seq_SET(keys, i, value); 5104 asdl_seq_SET(keys, i, value);
5171 } 5105 }
5172 Py_XDECREF(tmp); 5106 Py_CLEAR(tmp);
5173 tmp = NULL;
5174 } else { 5107 } else {
5175 PyErr_SetString(PyExc_TypeError, "required field \"keys\" missing from Dict"); 5108 PyErr_SetString(PyExc_TypeError, "required field \"keys\" missing from Dict");
5176 return 1; 5109 return 1;
5177 } 5110 }
5178 if (_PyObject_HasAttrId(obj, &PyId_values)) { 5111 if (_PyObject_HasAttrId(obj, &PyId_values)) {
5192 expr_ty value; 5125 expr_ty value;
5193 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 5126 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
5194 if (res != 0) goto failed; 5127 if (res != 0) goto failed;
5195 asdl_seq_SET(values, i, value); 5128 asdl_seq_SET(values, i, value);
5196 } 5129 }
5197 Py_XDECREF(tmp); 5130 Py_CLEAR(tmp);
5198 tmp = NULL;
5199 } else { 5131 } else {
5200 PyErr_SetString(PyExc_TypeError, "required field \"values\" missing from Dict"); 5132 PyErr_SetString(PyExc_TypeError, "required field \"values\" missing from Dict");
5201 return 1; 5133 return 1;
5202 } 5134 }
5203 *out = Dict(keys, values, lineno, col_offset, arena); 5135 *out = Dict(keys, values, lineno, col_offset, arena);
5228 expr_ty value; 5160 expr_ty value;
5229 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 5161 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
5230 if (res != 0) goto failed; 5162 if (res != 0) goto failed;
5231 asdl_seq_SET(elts, i, value); 5163 asdl_seq_SET(elts, i, value);
5232 } 5164 }
5233 Py_XDECREF(tmp); 5165 Py_CLEAR(tmp);
5234 tmp = NULL;
5235 } else { 5166 } else {
5236 PyErr_SetString(PyExc_TypeError, "required field \"elts\" missing from Set"); 5167 PyErr_SetString(PyExc_TypeError, "required field \"elts\" missing from Set");
5237 return 1; 5168 return 1;
5238 } 5169 }
5239 *out = Set(elts, lineno, col_offset, arena); 5170 *out = Set(elts, lineno, col_offset, arena);
5252 int res; 5183 int res;
5253 tmp = _PyObject_GetAttrId(obj, &PyId_elt); 5184 tmp = _PyObject_GetAttrId(obj, &PyId_elt);
5254 if (tmp == NULL) goto failed; 5185 if (tmp == NULL) goto failed;
5255 res = obj2ast_expr(tmp, &elt, arena); 5186 res = obj2ast_expr(tmp, &elt, arena);
5256 if (res != 0) goto failed; 5187 if (res != 0) goto failed;
5257 Py_XDECREF(tmp); 5188 Py_CLEAR(tmp);
5258 tmp = NULL;
5259 } else { 5189 } else {
5260 PyErr_SetString(PyExc_TypeError, "required field \"elt\" missing from ListComp"); 5190 PyErr_SetString(PyExc_TypeError, "required field \"elt\" missing from ListComp");
5261 return 1; 5191 return 1;
5262 } 5192 }
5263 if (_PyObject_HasAttrId(obj, &PyId_generators)) { 5193 if (_PyObject_HasAttrId(obj, &PyId_generators)) {
5277 comprehension_ty value; 5207 comprehension_ty value;
5278 res = obj2ast_comprehension(PyList_GET_ITEM(tmp, i), &value, arena); 5208 res = obj2ast_comprehension(PyList_GET_ITEM(tmp, i), &value, arena);
5279 if (res != 0) goto failed; 5209 if (res != 0) goto failed;
5280 asdl_seq_SET(generators, i, value); 5210 asdl_seq_SET(generators, i, value);
5281 } 5211 }
5282 Py_XDECREF(tmp); 5212 Py_CLEAR(tmp);
5283 tmp = NULL;
5284 } else { 5213 } else {
5285 PyErr_SetString(PyExc_TypeError, "required field \"generators\" missing from ListComp"); 5214 PyErr_SetString(PyExc_TypeError, "required field \"generators\" missing from ListComp");
5286 return 1; 5215 return 1;
5287 } 5216 }
5288 *out = ListComp(elt, generators, lineno, col_offset, arena); 5217 *out = ListComp(elt, generators, lineno, col_offset, arena);
5301 int res; 5230 int res;
5302 tmp = _PyObject_GetAttrId(obj, &PyId_elt); 5231 tmp = _PyObject_GetAttrId(obj, &PyId_elt);
5303 if (tmp == NULL) goto failed; 5232 if (tmp == NULL) goto failed;
5304 res = obj2ast_expr(tmp, &elt, arena); 5233 res = obj2ast_expr(tmp, &elt, arena);
5305 if (res != 0) goto failed; 5234 if (res != 0) goto failed;
5306 Py_XDECREF(tmp); 5235 Py_CLEAR(tmp);
5307 tmp = NULL;
5308 } else { 5236 } else {
5309 PyErr_SetString(PyExc_TypeError, "required field \"elt\" missing from SetComp"); 5237 PyErr_SetString(PyExc_TypeError, "required field \"elt\" missing from SetComp");
5310 return 1; 5238 return 1;
5311 } 5239 }
5312 if (_PyObject_HasAttrId(obj, &PyId_generators)) { 5240 if (_PyObject_HasAttrId(obj, &PyId_generators)) {
5326 comprehension_ty value; 5254 comprehension_ty value;
5327 res = obj2ast_comprehension(PyList_GET_ITEM(tmp, i), &value, arena); 5255 res = obj2ast_comprehension(PyList_GET_ITEM(tmp, i), &value, arena);
5328 if (res != 0) goto failed; 5256 if (res != 0) goto failed;
5329 asdl_seq_SET(generators, i, value); 5257 asdl_seq_SET(generators, i, value);
5330 } 5258 }
5331 Py_XDECREF(tmp); 5259 Py_CLEAR(tmp);
5332 tmp = NULL;
5333 } else { 5260 } else {
5334 PyErr_SetString(PyExc_TypeError, "required field \"generators\" missing from SetComp"); 5261 PyErr_SetString(PyExc_TypeError, "required field \"generators\" missing from SetComp");
5335 return 1; 5262 return 1;
5336 } 5263 }
5337 *out = SetComp(elt, generators, lineno, col_offset, arena); 5264 *out = SetComp(elt, generators, lineno, col_offset, arena);
5351 int res; 5278 int res;
5352 tmp = _PyObject_GetAttrId(obj, &PyId_key); 5279 tmp = _PyObject_GetAttrId(obj, &PyId_key);
5353 if (tmp == NULL) goto failed; 5280 if (tmp == NULL) goto failed;
5354 res = obj2ast_expr(tmp, &key, arena); 5281 res = obj2ast_expr(tmp, &key, arena);
5355 if (res != 0) goto failed; 5282 if (res != 0) goto failed;
5356 Py_XDECREF(tmp); 5283 Py_CLEAR(tmp);
5357 tmp = NULL;
5358 } else { 5284 } else {
5359 PyErr_SetString(PyExc_TypeError, "required field \"key\" missing from DictComp"); 5285 PyErr_SetString(PyExc_TypeError, "required field \"key\" missing from DictComp");
5360 return 1; 5286 return 1;
5361 } 5287 }
5362 if (_PyObject_HasAttrId(obj, &PyId_value)) { 5288 if (_PyObject_HasAttrId(obj, &PyId_value)) {
5363 int res; 5289 int res;
5364 tmp = _PyObject_GetAttrId(obj, &PyId_value); 5290 tmp = _PyObject_GetAttrId(obj, &PyId_value);
5365 if (tmp == NULL) goto failed; 5291 if (tmp == NULL) goto failed;
5366 res = obj2ast_expr(tmp, &value, arena); 5292 res = obj2ast_expr(tmp, &value, arena);
5367 if (res != 0) goto failed; 5293 if (res != 0) goto failed;
5368 Py_XDECREF(tmp); 5294 Py_CLEAR(tmp);
5369 tmp = NULL;
5370 } else { 5295 } else {
5371 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from DictComp"); 5296 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from DictComp");
5372 return 1; 5297 return 1;
5373 } 5298 }
5374 if (_PyObject_HasAttrId(obj, &PyId_generators)) { 5299 if (_PyObject_HasAttrId(obj, &PyId_generators)) {
5388 comprehension_ty value; 5313 comprehension_ty value;
5389 res = obj2ast_comprehension(PyList_GET_ITEM(tmp, i), &value, arena); 5314 res = obj2ast_comprehension(PyList_GET_ITEM(tmp, i), &value, arena);
5390 if (res != 0) goto failed; 5315 if (res != 0) goto failed;
5391 asdl_seq_SET(generators, i, value); 5316 asdl_seq_SET(generators, i, value);
5392 } 5317 }
5393 Py_XDECREF(tmp); 5318 Py_CLEAR(tmp);
5394 tmp = NULL;
5395 } else { 5319 } else {
5396 PyErr_SetString(PyExc_TypeError, "required field \"generators\" missing from DictComp"); 5320 PyErr_SetString(PyExc_TypeError, "required field \"generators\" missing from DictComp");
5397 return 1; 5321 return 1;
5398 } 5322 }
5399 *out = DictComp(key, value, generators, lineno, col_offset, arena); 5323 *out = DictComp(key, value, generators, lineno, col_offset, arena);
5412 int res; 5336 int res;
5413 tmp = _PyObject_GetAttrId(obj, &PyId_elt); 5337 tmp = _PyObject_GetAttrId(obj, &PyId_elt);
5414 if (tmp == NULL) goto failed; 5338 if (tmp == NULL) goto failed;
5415 res = obj2ast_expr(tmp, &elt, arena); 5339 res = obj2ast_expr(tmp, &elt, arena);
5416 if (res != 0) goto failed; 5340 if (res != 0) goto failed;
5417 Py_XDECREF(tmp); 5341 Py_CLEAR(tmp);
5418 tmp = NULL;
5419 } else { 5342 } else {
5420 PyErr_SetString(PyExc_TypeError, "required field \"elt\" missing from GeneratorExp"); 5343 PyErr_SetString(PyExc_TypeError, "required field \"elt\" missing from GeneratorExp");
5421 return 1; 5344 return 1;
5422 } 5345 }
5423 if (_PyObject_HasAttrId(obj, &PyId_generators)) { 5346 if (_PyObject_HasAttrId(obj, &PyId_generators)) {
5437 comprehension_ty value; 5360 comprehension_ty value;
5438 res = obj2ast_comprehension(PyList_GET_ITEM(tmp, i), &value, arena); 5361 res = obj2ast_comprehension(PyList_GET_ITEM(tmp, i), &value, arena);
5439 if (res != 0) goto failed; 5362 if (res != 0) goto failed;
5440 asdl_seq_SET(generators, i, value); 5363 asdl_seq_SET(generators, i, value);
5441 } 5364 }
5442 Py_XDECREF(tmp); 5365 Py_CLEAR(tmp);
5443 tmp = NULL;
5444 } else { 5366 } else {
5445 PyErr_SetString(PyExc_TypeError, "required field \"generators\" missing from GeneratorExp"); 5367 PyErr_SetString(PyExc_TypeError, "required field \"generators\" missing from GeneratorExp");
5446 return 1; 5368 return 1;
5447 } 5369 }
5448 *out = GeneratorExp(elt, generators, lineno, col_offset, arena); 5370 *out = GeneratorExp(elt, generators, lineno, col_offset, arena);
5460 int res; 5382 int res;
5461 tmp = _PyObject_GetAttrId(obj, &PyId_value); 5383 tmp = _PyObject_GetAttrId(obj, &PyId_value);
5462 if (tmp == NULL) goto failed; 5384 if (tmp == NULL) goto failed;
5463 res = obj2ast_expr(tmp, &value, arena); 5385 res = obj2ast_expr(tmp, &value, arena);
5464 if (res != 0) goto failed; 5386 if (res != 0) goto failed;
5465 Py_XDECREF(tmp); 5387 Py_CLEAR(tmp);
5466 tmp = NULL;
5467 } else { 5388 } else {
5468 value = NULL; 5389 value = NULL;
5469 } 5390 }
5470 *out = Yield(value, lineno, col_offset, arena); 5391 *out = Yield(value, lineno, col_offset, arena);
5471 if (*out == NULL) goto failed; 5392 if (*out == NULL) goto failed;
5482 int res; 5403 int res;
5483 tmp = _PyObject_GetAttrId(obj, &PyId_value); 5404 tmp = _PyObject_GetAttrId(obj, &PyId_value);
5484 if (tmp == NULL) goto failed; 5405 if (tmp == NULL) goto failed;
5485 res = obj2ast_expr(tmp, &value, arena); 5406 res = obj2ast_expr(tmp, &value, arena);
5486 if (res != 0) goto failed; 5407 if (res != 0) goto failed;
5487 Py_XDECREF(tmp); 5408 Py_CLEAR(tmp);
5488 tmp = NULL;
5489 } else { 5409 } else {
5490 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from YieldFrom"); 5410 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from YieldFrom");
5491 return 1; 5411 return 1;
5492 } 5412 }
5493 *out = YieldFrom(value, lineno, col_offset, arena); 5413 *out = YieldFrom(value, lineno, col_offset, arena);
5507 int res; 5427 int res;
5508 tmp = _PyObject_GetAttrId(obj, &PyId_left); 5428 tmp = _PyObject_GetAttrId(obj, &PyId_left);
5509 if (tmp == NULL) goto failed; 5429 if (tmp == NULL) goto failed;
5510 res = obj2ast_expr(tmp, &left, arena); 5430 res = obj2ast_expr(tmp, &left, arena);
5511 if (res != 0) goto failed; 5431 if (res != 0) goto failed;
5512 Py_XDECREF(tmp); 5432 Py_CLEAR(tmp);
5513 tmp = NULL;
5514 } else { 5433 } else {
5515 PyErr_SetString(PyExc_TypeError, "required field \"left\" missing from Compare"); 5434 PyErr_SetString(PyExc_TypeError, "required field \"left\" missing from Compare");
5516 return 1; 5435 return 1;
5517 } 5436 }
5518 if (_PyObject_HasAttrId(obj, &PyId_ops)) { 5437 if (_PyObject_HasAttrId(obj, &PyId_ops)) {
5532 cmpop_ty value; 5451 cmpop_ty value;
5533 res = obj2ast_cmpop(PyList_GET_ITEM(tmp, i), &value, arena); 5452 res = obj2ast_cmpop(PyList_GET_ITEM(tmp, i), &value, arena);
5534 if (res != 0) goto failed; 5453 if (res != 0) goto failed;
5535 asdl_seq_SET(ops, i, value); 5454 asdl_seq_SET(ops, i, value);
5536 } 5455 }
5537 Py_XDECREF(tmp); 5456 Py_CLEAR(tmp);
5538 tmp = NULL;
5539 } else { 5457 } else {
5540 PyErr_SetString(PyExc_TypeError, "required field \"ops\" missing from Compare"); 5458 PyErr_SetString(PyExc_TypeError, "required field \"ops\" missing from Compare");
5541 return 1; 5459 return 1;
5542 } 5460 }
5543 if (_PyObject_HasAttrId(obj, &PyId_comparators)) { 5461 if (_PyObject_HasAttrId(obj, &PyId_comparators)) {
5557 expr_ty value; 5475 expr_ty value;
5558 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 5476 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
5559 if (res != 0) goto failed; 5477 if (res != 0) goto failed;
5560 asdl_seq_SET(comparators, i, value); 5478 asdl_seq_SET(comparators, i, value);
5561 } 5479 }
5562 Py_XDECREF(tmp); 5480 Py_CLEAR(tmp);
5563 tmp = NULL;
5564 } else { 5481 } else {
5565 PyErr_SetString(PyExc_TypeError, "required field \"comparators\" missing from Compare"); 5482 PyErr_SetString(PyExc_TypeError, "required field \"comparators\" missing from Compare");
5566 return 1; 5483 return 1;
5567 } 5484 }
5568 *out = Compare(left, ops, comparators, lineno, col_offset, arena); 5485 *out = Compare(left, ops, comparators, lineno, col_offset, arena);
5584 int res; 5501 int res;
5585 tmp = _PyObject_GetAttrId(obj, &PyId_func); 5502 tmp = _PyObject_GetAttrId(obj, &PyId_func);
5586 if (tmp == NULL) goto failed; 5503 if (tmp == NULL) goto failed;
5587 res = obj2ast_expr(tmp, &func, arena); 5504 res = obj2ast_expr(tmp, &func, arena);
5588 if (res != 0) goto failed; 5505 if (res != 0) goto failed;
5589 Py_XDECREF(tmp); 5506 Py_CLEAR(tmp);
5590 tmp = NULL;
5591 } else { 5507 } else {
5592 PyErr_SetString(PyExc_TypeError, "required field \"func\" missing from Call"); 5508 PyErr_SetString(PyExc_TypeError, "required field \"func\" missing from Call");
5593 return 1; 5509 return 1;
5594 } 5510 }
5595 if (_PyObject_HasAttrId(obj, &PyId_args)) { 5511 if (_PyObject_HasAttrId(obj, &PyId_args)) {
5609 expr_ty value; 5525 expr_ty value;
5610 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 5526 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
5611 if (res != 0) goto failed; 5527 if (res != 0) goto failed;
5612 asdl_seq_SET(args, i, value); 5528 asdl_seq_SET(args, i, value);
5613 } 5529 }
5614 Py_XDECREF(tmp); 5530 Py_CLEAR(tmp);
5615 tmp = NULL;
5616 } else { 5531 } else {
5617 PyErr_SetString(PyExc_TypeError, "required field \"args\" missing from Call"); 5532 PyErr_SetString(PyExc_TypeError, "required field \"args\" missing from Call");
5618 return 1; 5533 return 1;
5619 } 5534 }
5620 if (_PyObject_HasAttrId(obj, &PyId_keywords)) { 5535 if (_PyObject_HasAttrId(obj, &PyId_keywords)) {
5634 keyword_ty value; 5549 keyword_ty value;
5635 res = obj2ast_keyword(PyList_GET_ITEM(tmp, i), &value, arena); 5550 res = obj2ast_keyword(PyList_GET_ITEM(tmp, i), &value, arena);
5636 if (res != 0) goto failed; 5551 if (res != 0) goto failed;
5637 asdl_seq_SET(keywords, i, value); 5552 asdl_seq_SET(keywords, i, value);
5638 } 5553 }
5639 Py_XDECREF(tmp); 5554 Py_CLEAR(tmp);
5640 tmp = NULL;
5641 } else { 5555 } else {
5642 PyErr_SetString(PyExc_TypeError, "required field \"keywords\" missing from Call"); 5556 PyErr_SetString(PyExc_TypeError, "required field \"keywords\" missing from Call");
5643 return 1; 5557 return 1;
5644 } 5558 }
5645 if (exists_not_none(obj, &PyId_starargs)) { 5559 if (exists_not_none(obj, &PyId_starargs)) {
5646 int res; 5560 int res;
5647 tmp = _PyObject_GetAttrId(obj, &PyId_starargs); 5561 tmp = _PyObject_GetAttrId(obj, &PyId_starargs);
5648 if (tmp == NULL) goto failed; 5562 if (tmp == NULL) goto failed;
5649 res = obj2ast_expr(tmp, &starargs, arena); 5563 res = obj2ast_expr(tmp, &starargs, arena);
5650 if (res != 0) goto failed; 5564 if (res != 0) goto failed;
5651 Py_XDECREF(tmp); 5565 Py_CLEAR(tmp);
5652 tmp = NULL;
5653 } else { 5566 } else {
5654 starargs = NULL; 5567 starargs = NULL;
5655 } 5568 }
5656 if (exists_not_none(obj, &PyId_kwargs)) { 5569 if (exists_not_none(obj, &PyId_kwargs)) {
5657 int res; 5570 int res;
5658 tmp = _PyObject_GetAttrId(obj, &PyId_kwargs); 5571 tmp = _PyObject_GetAttrId(obj, &PyId_kwargs);
5659 if (tmp == NULL) goto failed; 5572 if (tmp == NULL) goto failed;
5660 res = obj2ast_expr(tmp, &kwargs, arena); 5573 res = obj2ast_expr(tmp, &kwargs, arena);
5661 if (res != 0) goto failed; 5574 if (res != 0) goto failed;
5662 Py_XDECREF(tmp); 5575 Py_CLEAR(tmp);
5663 tmp = NULL;
5664 } else { 5576 } else {
5665 kwargs = NULL; 5577 kwargs = NULL;
5666 } 5578 }
5667 *out = Call(func, args, keywords, starargs, kwargs, lineno, col_offset, 5579 *out = Call(func, args, keywords, starargs, kwargs, lineno, col_offset,
5668 arena); 5580 arena);
5680 int res; 5592 int res;
5681 tmp = _PyObject_GetAttrId(obj, &PyId_n); 5593 tmp = _PyObject_GetAttrId(obj, &PyId_n);
5682 if (tmp == NULL) goto failed; 5594 if (tmp == NULL) goto failed;
5683 res = obj2ast_object(tmp, &n, arena); 5595 res = obj2ast_object(tmp, &n, arena);
5684 if (res != 0) goto failed; 5596 if (res != 0) goto failed;
5685 Py_XDECREF(tmp); 5597 Py_CLEAR(tmp);
5686 tmp = NULL;
5687 } else { 5598 } else {
5688 PyErr_SetString(PyExc_TypeError, "required field \"n\" missing from Num"); 5599 PyErr_SetString(PyExc_TypeError, "required field \"n\" missing from Num");
5689 return 1; 5600 return 1;
5690 } 5601 }
5691 *out = Num(n, lineno, col_offset, arena); 5602 *out = Num(n, lineno, col_offset, arena);
5703 int res; 5614 int res;
5704 tmp = _PyObject_GetAttrId(obj, &PyId_s); 5615 tmp = _PyObject_GetAttrId(obj, &PyId_s);
5705 if (tmp == NULL) goto failed; 5616 if (tmp == NULL) goto failed;
5706 res = obj2ast_string(tmp, &s, arena); 5617 res = obj2ast_string(tmp, &s, arena);
5707 if (res != 0) goto failed; 5618 if (res != 0) goto failed;
5708 Py_XDECREF(tmp); 5619 Py_CLEAR(tmp);
5709 tmp = NULL;
5710 } else { 5620 } else {
5711 PyErr_SetString(PyExc_TypeError, "required field \"s\" missing from Str"); 5621 PyErr_SetString(PyExc_TypeError, "required field \"s\" missing from Str");
5712 return 1; 5622 return 1;
5713 } 5623 }
5714 *out = Str(s, lineno, col_offset, arena); 5624 *out = Str(s, lineno, col_offset, arena);
5726 int res; 5636 int res;
5727 tmp = _PyObject_GetAttrId(obj, &PyId_s); 5637 tmp = _PyObject_GetAttrId(obj, &PyId_s);
5728 if (tmp == NULL) goto failed; 5638 if (tmp == NULL) goto failed;
5729 res = obj2ast_bytes(tmp, &s, arena); 5639 res = obj2ast_bytes(tmp, &s, arena);
5730 if (res != 0) goto failed; 5640 if (res != 0) goto failed;
5731 Py_XDECREF(tmp); 5641 Py_CLEAR(tmp);
5732 tmp = NULL;
5733 } else { 5642 } else {
5734 PyErr_SetString(PyExc_TypeError, "required field \"s\" missing from Bytes"); 5643 PyErr_SetString(PyExc_TypeError, "required field \"s\" missing from Bytes");
5735 return 1; 5644 return 1;
5736 } 5645 }
5737 *out = Bytes(s, lineno, col_offset, arena); 5646 *out = Bytes(s, lineno, col_offset, arena);
5749 int res; 5658 int res;
5750 tmp = _PyObject_GetAttrId(obj, &PyId_value); 5659 tmp = _PyObject_GetAttrId(obj, &PyId_value);
5751 if (tmp == NULL) goto failed; 5660 if (tmp == NULL) goto failed;
5752 res = obj2ast_singleton(tmp, &value, arena); 5661 res = obj2ast_singleton(tmp, &value, arena);
5753 if (res != 0) goto failed; 5662 if (res != 0) goto failed;
5754 Py_XDECREF(tmp); 5663 Py_CLEAR(tmp);
5755 tmp = NULL;
5756 } else { 5664 } else {
5757 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from NameConstant"); 5665 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from NameConstant");
5758 return 1; 5666 return 1;
5759 } 5667 }
5760 *out = NameConstant(value, lineno, col_offset, arena); 5668 *out = NameConstant(value, lineno, col_offset, arena);
5784 int res; 5692 int res;
5785 tmp = _PyObject_GetAttrId(obj, &PyId_value); 5693 tmp = _PyObject_GetAttrId(obj, &PyId_value);
5786 if (tmp == NULL) goto failed; 5694 if (tmp == NULL) goto failed;
5787 res = obj2ast_expr(tmp, &value, arena); 5695 res = obj2ast_expr(tmp, &value, arena);
5788 if (res != 0) goto failed; 5696 if (res != 0) goto failed;
5789 Py_XDECREF(tmp); 5697 Py_CLEAR(tmp);
5790 tmp = NULL;
5791 } else { 5698 } else {
5792 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Attribute"); 5699 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Attribute");
5793 return 1; 5700 return 1;
5794 } 5701 }
5795 if (_PyObject_HasAttrId(obj, &PyId_attr)) { 5702 if (_PyObject_HasAttrId(obj, &PyId_attr)) {
5796 int res; 5703 int res;
5797 tmp = _PyObject_GetAttrId(obj, &PyId_attr); 5704 tmp = _PyObject_GetAttrId(obj, &PyId_attr);
5798 if (tmp == NULL) goto failed; 5705 if (tmp == NULL) goto failed;
5799 res = obj2ast_identifier(tmp, &attr, arena); 5706 res = obj2ast_identifier(tmp, &attr, arena);
5800 if (res != 0) goto failed; 5707 if (res != 0) goto failed;
5801 Py_XDECREF(tmp); 5708 Py_CLEAR(tmp);
5802 tmp = NULL;
5803 } else { 5709 } else {
5804 PyErr_SetString(PyExc_TypeError, "required field \"attr\" missing from Attribute"); 5710 PyErr_SetString(PyExc_TypeError, "required field \"attr\" missing from Attribute");
5805 return 1; 5711 return 1;
5806 } 5712 }
5807 if (_PyObject_HasAttrId(obj, &PyId_ctx)) { 5713 if (_PyObject_HasAttrId(obj, &PyId_ctx)) {
5808 int res; 5714 int res;
5809 tmp = _PyObject_GetAttrId(obj, &PyId_ctx); 5715 tmp = _PyObject_GetAttrId(obj, &PyId_ctx);
5810 if (tmp == NULL) goto failed; 5716 if (tmp == NULL) goto failed;
5811 res = obj2ast_expr_context(tmp, &ctx, arena); 5717 res = obj2ast_expr_context(tmp, &ctx, arena);
5812 if (res != 0) goto failed; 5718 if (res != 0) goto failed;
5813 Py_XDECREF(tmp); 5719 Py_CLEAR(tmp);
5814 tmp = NULL;
5815 } else { 5720 } else {
5816 PyErr_SetString(PyExc_TypeError, "required field \"ctx\" missing from Attribute"); 5721 PyErr_SetString(PyExc_TypeError, "required field \"ctx\" missing from Attribute");
5817 return 1; 5722 return 1;
5818 } 5723 }
5819 *out = Attribute(value, attr, ctx, lineno, col_offset, arena); 5724 *out = Attribute(value, attr, ctx, lineno, col_offset, arena);
5833 int res; 5738 int res;
5834 tmp = _PyObject_GetAttrId(obj, &PyId_value); 5739 tmp = _PyObject_GetAttrId(obj, &PyId_value);
5835 if (tmp == NULL) goto failed; 5740 if (tmp == NULL) goto failed;
5836 res = obj2ast_expr(tmp, &value, arena); 5741 res = obj2ast_expr(tmp, &value, arena);
5837 if (res != 0) goto failed; 5742 if (res != 0) goto failed;
5838 Py_XDECREF(tmp); 5743 Py_CLEAR(tmp);
5839 tmp = NULL;
5840 } else { 5744 } else {
5841 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Subscript"); 5745 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Subscript");
5842 return 1; 5746 return 1;
5843 } 5747 }
5844 if (_PyObject_HasAttrId(obj, &PyId_slice)) { 5748 if (_PyObject_HasAttrId(obj, &PyId_slice)) {
5845 int res; 5749 int res;
5846 tmp = _PyObject_GetAttrId(obj, &PyId_slice); 5750 tmp = _PyObject_GetAttrId(obj, &PyId_slice);
5847 if (tmp == NULL) goto failed; 5751 if (tmp == NULL) goto failed;
5848 res = obj2ast_slice(tmp, &slice, arena); 5752 res = obj2ast_slice(tmp, &slice, arena);
5849 if (res != 0) goto failed; 5753 if (res != 0) goto failed;
5850 Py_XDECREF(tmp); 5754 Py_CLEAR(tmp);
5851 tmp = NULL;
5852 } else { 5755 } else {
5853 PyErr_SetString(PyExc_TypeError, "required field \"slice\" missing from Subscript"); 5756 PyErr_SetString(PyExc_TypeError, "required field \"slice\" missing from Subscript");
5854 return 1; 5757 return 1;
5855 } 5758 }
5856 if (_PyObject_HasAttrId(obj, &PyId_ctx)) { 5759 if (_PyObject_HasAttrId(obj, &PyId_ctx)) {
5857 int res; 5760 int res;
5858 tmp = _PyObject_GetAttrId(obj, &PyId_ctx); 5761 tmp = _PyObject_GetAttrId(obj, &PyId_ctx);
5859 if (tmp == NULL) goto failed; 5762 if (tmp == NULL) goto failed;
5860 res = obj2ast_expr_context(tmp, &ctx, arena); 5763 res = obj2ast_expr_context(tmp, &ctx, arena);
5861 if (res != 0) goto failed; 5764 if (res != 0) goto failed;
5862 Py_XDECREF(tmp); 5765 Py_CLEAR(tmp);
5863 tmp = NULL;
5864 } else { 5766 } else {
5865 PyErr_SetString(PyExc_TypeError, "required field \"ctx\" missing from Subscript"); 5767 PyErr_SetString(PyExc_TypeError, "required field \"ctx\" missing from Subscript");
5866 return 1; 5768 return 1;
5867 } 5769 }
5868 *out = Subscript(value, slice, ctx, lineno, col_offset, arena); 5770 *out = Subscript(value, slice, ctx, lineno, col_offset, arena);
5881 int res; 5783 int res;
5882 tmp = _PyObject_GetAttrId(obj, &PyId_value); 5784 tmp = _PyObject_GetAttrId(obj, &PyId_value);
5883 if (tmp == NULL) goto failed; 5785 if (tmp == NULL) goto failed;
5884 res = obj2ast_expr(tmp, &value, arena); 5786 res = obj2ast_expr(tmp, &value, arena);
5885 if (res != 0) goto failed; 5787 if (res != 0) goto failed;
5886 Py_XDECREF(tmp); 5788 Py_CLEAR(tmp);
5887 tmp = NULL;
5888 } else { 5789 } else {
5889 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Starred"); 5790 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Starred");
5890 return 1; 5791 return 1;
5891 } 5792 }
5892 if (_PyObject_HasAttrId(obj, &PyId_ctx)) { 5793 if (_PyObject_HasAttrId(obj, &PyId_ctx)) {
5893 int res; 5794 int res;
5894 tmp = _PyObject_GetAttrId(obj, &PyId_ctx); 5795 tmp = _PyObject_GetAttrId(obj, &PyId_ctx);
5895 if (tmp == NULL) goto failed; 5796 if (tmp == NULL) goto failed;
5896 res = obj2ast_expr_context(tmp, &ctx, arena); 5797 res = obj2ast_expr_context(tmp, &ctx, arena);
5897 if (res != 0) goto failed; 5798 if (res != 0) goto failed;
5898 Py_XDECREF(tmp); 5799 Py_CLEAR(tmp);
5899 tmp = NULL;
5900 } else { 5800 } else {
5901 PyErr_SetString(PyExc_TypeError, "required field \"ctx\" missing from Starred"); 5801 PyErr_SetString(PyExc_TypeError, "required field \"ctx\" missing from Starred");
5902 return 1; 5802 return 1;
5903 } 5803 }
5904 *out = Starred(value, ctx, lineno, col_offset, arena); 5804 *out = Starred(value, ctx, lineno, col_offset, arena);
5917 int res; 5817 int res;
5918 tmp = _PyObject_GetAttrId(obj, &PyId_id); 5818 tmp = _PyObject_GetAttrId(obj, &PyId_id);
5919 if (tmp == NULL) goto failed; 5819 if (tmp == NULL) goto failed;
5920 res = obj2ast_identifier(tmp, &id, arena); 5820 res = obj2ast_identifier(tmp, &id, arena);
5921 if (res != 0) goto failed; 5821 if (res != 0) goto failed;
5922 Py_XDECREF(tmp); 5822 Py_CLEAR(tmp);
5923 tmp = NULL;
5924 } else { 5823 } else {
5925 PyErr_SetString(PyExc_TypeError, "required field \"id\" missing from Name"); 5824 PyErr_SetString(PyExc_TypeError, "required field \"id\" missing from Name");
5926 return 1; 5825 return 1;
5927 } 5826 }
5928 if (_PyObject_HasAttrId(obj, &PyId_ctx)) { 5827 if (_PyObject_HasAttrId(obj, &PyId_ctx)) {
5929 int res; 5828 int res;
5930 tmp = _PyObject_GetAttrId(obj, &PyId_ctx); 5829 tmp = _PyObject_GetAttrId(obj, &PyId_ctx);
5931 if (tmp == NULL) goto failed; 5830 if (tmp == NULL) goto failed;
5932 res = obj2ast_expr_context(tmp, &ctx, arena); 5831 res = obj2ast_expr_context(tmp, &ctx, arena);
5933 if (res != 0) goto failed; 5832 if (res != 0) goto failed;
5934 Py_XDECREF(tmp); 5833 Py_CLEAR(tmp);
5935 tmp = NULL;
5936 } else { 5834 } else {
5937 PyErr_SetString(PyExc_TypeError, "required field \"ctx\" missing from Name"); 5835 PyErr_SetString(PyExc_TypeError, "required field \"ctx\" missing from Name");
5938 return 1; 5836 return 1;
5939 } 5837 }
5940 *out = Name(id, ctx, lineno, col_offset, arena); 5838 *out = Name(id, ctx, lineno, col_offset, arena);
5966 expr_ty value; 5864 expr_ty value;
5967 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 5865 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
5968 if (res != 0) goto failed; 5866 if (res != 0) goto failed;
5969 asdl_seq_SET(elts, i, value); 5867 asdl_seq_SET(elts, i, value);
5970 } 5868 }
5971 Py_XDECREF(tmp); 5869 Py_CLEAR(tmp);
5972 tmp = NULL;
5973 } else { 5870 } else {
5974 PyErr_SetString(PyExc_TypeError, "required field \"elts\" missing from List"); 5871 PyErr_SetString(PyExc_TypeError, "required field \"elts\" missing from List");
5975 return 1; 5872 return 1;
5976 } 5873 }
5977 if (_PyObject_HasAttrId(obj, &PyId_ctx)) { 5874 if (_PyObject_HasAttrId(obj, &PyId_ctx)) {
5978 int res; 5875 int res;
5979 tmp = _PyObject_GetAttrId(obj, &PyId_ctx); 5876 tmp = _PyObject_GetAttrId(obj, &PyId_ctx);
5980 if (tmp == NULL) goto failed; 5877 if (tmp == NULL) goto failed;
5981 res = obj2ast_expr_context(tmp, &ctx, arena); 5878 res = obj2ast_expr_context(tmp, &ctx, arena);
5982 if (res != 0) goto failed; 5879 if (res != 0) goto failed;
5983 Py_XDECREF(tmp); 5880 Py_CLEAR(tmp);
5984 tmp = NULL;
5985 } else { 5881 } else {
5986 PyErr_SetString(PyExc_TypeError, "required field \"ctx\" missing from List"); 5882 PyErr_SetString(PyExc_TypeError, "required field \"ctx\" missing from List");
5987 return 1; 5883 return 1;
5988 } 5884 }
5989 *out = List(elts, ctx, lineno, col_offset, arena); 5885 *out = List(elts, ctx, lineno, col_offset, arena);
6015 expr_ty value; 5911 expr_ty value;
6016 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 5912 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
6017 if (res != 0) goto failed; 5913 if (res != 0) goto failed;
6018 asdl_seq_SET(elts, i, value); 5914 asdl_seq_SET(elts, i, value);
6019 } 5915 }
6020 Py_XDECREF(tmp); 5916 Py_CLEAR(tmp);
6021 tmp = NULL;
6022 } else { 5917 } else {
6023 PyErr_SetString(PyExc_TypeError, "required field \"elts\" missing from Tuple"); 5918 PyErr_SetString(PyExc_TypeError, "required field \"elts\" missing from Tuple");
6024 return 1; 5919 return 1;
6025 } 5920 }
6026 if (_PyObject_HasAttrId(obj, &PyId_ctx)) { 5921 if (_PyObject_HasAttrId(obj, &PyId_ctx)) {
6027 int res; 5922 int res;
6028 tmp = _PyObject_GetAttrId(obj, &PyId_ctx); 5923 tmp = _PyObject_GetAttrId(obj, &PyId_ctx);
6029 if (tmp == NULL) goto failed; 5924 if (tmp == NULL) goto failed;
6030 res = obj2ast_expr_context(tmp, &ctx, arena); 5925 res = obj2ast_expr_context(tmp, &ctx, arena);
6031 if (res != 0) goto failed; 5926 if (res != 0) goto failed;
6032 Py_XDECREF(tmp); 5927 Py_CLEAR(tmp);
6033 tmp = NULL;
6034 } else { 5928 } else {
6035 PyErr_SetString(PyExc_TypeError, "required field \"ctx\" missing from Tuple"); 5929 PyErr_SetString(PyExc_TypeError, "required field \"ctx\" missing from Tuple");
6036 return 1; 5930 return 1;
6037 } 5931 }
6038 *out = Tuple(elts, ctx, lineno, col_offset, arena); 5932 *out = Tuple(elts, ctx, lineno, col_offset, arena);
6128 int res; 6022 int res;
6129 tmp = _PyObject_GetAttrId(obj, &PyId_lower); 6023 tmp = _PyObject_GetAttrId(obj, &PyId_lower);
6130 if (tmp == NULL) goto failed; 6024 if (tmp == NULL) goto failed;
6131 res = obj2ast_expr(tmp, &lower, arena); 6025 res = obj2ast_expr(tmp, &lower, arena);
6132 if (res != 0) goto failed; 6026 if (res != 0) goto failed;
6133 Py_XDECREF(tmp); 6027 Py_CLEAR(tmp);
6134 tmp = NULL;
6135 } else { 6028 } else {
6136 lower = NULL; 6029 lower = NULL;
6137 } 6030 }
6138 if (exists_not_none(obj, &PyId_upper)) { 6031 if (exists_not_none(obj, &PyId_upper)) {
6139 int res; 6032 int res;
6140 tmp = _PyObject_GetAttrId(obj, &PyId_upper); 6033 tmp = _PyObject_GetAttrId(obj, &PyId_upper);
6141 if (tmp == NULL) goto failed; 6034 if (tmp == NULL) goto failed;
6142 res = obj2ast_expr(tmp, &upper, arena); 6035 res = obj2ast_expr(tmp, &upper, arena);
6143 if (res != 0) goto failed; 6036 if (res != 0) goto failed;
6144 Py_XDECREF(tmp); 6037 Py_CLEAR(tmp);
6145 tmp = NULL;
6146 } else { 6038 } else {
6147 upper = NULL; 6039 upper = NULL;
6148 } 6040 }
6149 if (exists_not_none(obj, &PyId_step)) { 6041 if (exists_not_none(obj, &PyId_step)) {
6150 int res; 6042 int res;
6151 tmp = _PyObject_GetAttrId(obj, &PyId_step); 6043 tmp = _PyObject_GetAttrId(obj, &PyId_step);
6152 if (tmp == NULL) goto failed; 6044 if (tmp == NULL) goto failed;
6153 res = obj2ast_expr(tmp, &step, arena); 6045 res = obj2ast_expr(tmp, &step, arena);
6154 if (res != 0) goto failed; 6046 if (res != 0) goto failed;
6155 Py_XDECREF(tmp); 6047 Py_CLEAR(tmp);
6156 tmp = NULL;
6157 } else { 6048 } else {
6158 step = NULL; 6049 step = NULL;
6159 } 6050 }
6160 *out = Slice(lower, upper, step, arena); 6051 *out = Slice(lower, upper, step, arena);
6161 if (*out == NULL) goto failed; 6052 if (*out == NULL) goto failed;
6185 slice_ty value; 6076 slice_ty value;
6186 res = obj2ast_slice(PyList_GET_ITEM(tmp, i), &value, arena); 6077 res = obj2ast_slice(PyList_GET_ITEM(tmp, i), &value, arena);
6187 if (res != 0) goto failed; 6078 if (res != 0) goto failed;
6188 asdl_seq_SET(dims, i, value); 6079 asdl_seq_SET(dims, i, value);
6189 } 6080 }
6190 Py_XDECREF(tmp); 6081 Py_CLEAR(tmp);
6191 tmp = NULL;
6192 } else { 6082 } else {
6193 PyErr_SetString(PyExc_TypeError, "required field \"dims\" missing from ExtSlice"); 6083 PyErr_SetString(PyExc_TypeError, "required field \"dims\" missing from ExtSlice");
6194 return 1; 6084 return 1;
6195 } 6085 }
6196 *out = ExtSlice(dims, arena); 6086 *out = ExtSlice(dims, arena);
6208 int res; 6098 int res;
6209 tmp = _PyObject_GetAttrId(obj, &PyId_value); 6099 tmp = _PyObject_GetAttrId(obj, &PyId_value);
6210 if (tmp == NULL) goto failed; 6100 if (tmp == NULL) goto failed;
6211 res = obj2ast_expr(tmp, &value, arena); 6101 res = obj2ast_expr(tmp, &value, arena);
6212 if (res != 0) goto failed; 6102 if (res != 0) goto failed;
6213 Py_XDECREF(tmp); 6103 Py_CLEAR(tmp);
6214 tmp = NULL;
6215 } else { 6104 } else {
6216 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Index"); 6105 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Index");
6217 return 1; 6106 return 1;
6218 } 6107 }
6219 *out = Index(value, arena); 6108 *out = Index(value, arena);
6503 int res; 6392 int res;
6504 tmp = _PyObject_GetAttrId(obj, &PyId_target); 6393 tmp = _PyObject_GetAttrId(obj, &PyId_target);
6505 if (tmp == NULL) goto failed; 6394 if (tmp == NULL) goto failed;
6506 res = obj2ast_expr(tmp, &target, arena); 6395 res = obj2ast_expr(tmp, &target, arena);
6507 if (res != 0) goto failed; 6396 if (res != 0) goto failed;
6508 Py_XDECREF(tmp); 6397 Py_CLEAR(tmp);
6509 tmp = NULL;
6510 } else { 6398 } else {
6511 PyErr_SetString(PyExc_TypeError, "required field \"target\" missing from comprehension"); 6399 PyErr_SetString(PyExc_TypeError, "required field \"target\" missing from comprehension");
6512 return 1; 6400 return 1;
6513 } 6401 }
6514 if (_PyObject_HasAttrId(obj, &PyId_iter)) { 6402 if (_PyObject_HasAttrId(obj, &PyId_iter)) {
6515 int res; 6403 int res;
6516 tmp = _PyObject_GetAttrId(obj, &PyId_iter); 6404 tmp = _PyObject_GetAttrId(obj, &PyId_iter);
6517 if (tmp == NULL) goto failed; 6405 if (tmp == NULL) goto failed;
6518 res = obj2ast_expr(tmp, &iter, arena); 6406 res = obj2ast_expr(tmp, &iter, arena);
6519 if (res != 0) goto failed; 6407 if (res != 0) goto failed;
6520 Py_XDECREF(tmp); 6408 Py_CLEAR(tmp);
6521 tmp = NULL;
6522 } else { 6409 } else {
6523 PyErr_SetString(PyExc_TypeError, "required field \"iter\" missing from comprehension"); 6410 PyErr_SetString(PyExc_TypeError, "required field \"iter\" missing from comprehension");
6524 return 1; 6411 return 1;
6525 } 6412 }
6526 if (_PyObject_HasAttrId(obj, &PyId_ifs)) { 6413 if (_PyObject_HasAttrId(obj, &PyId_ifs)) {
6540 expr_ty value; 6427 expr_ty value;
6541 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 6428 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
6542 if (res != 0) goto failed; 6429 if (res != 0) goto failed;
6543 asdl_seq_SET(ifs, i, value); 6430 asdl_seq_SET(ifs, i, value);
6544 } 6431 }
6545 Py_XDECREF(tmp); 6432 Py_CLEAR(tmp);
6546 tmp = NULL;
6547 } else { 6433 } else {
6548 PyErr_SetString(PyExc_TypeError, "required field \"ifs\" missing from comprehension"); 6434 PyErr_SetString(PyExc_TypeError, "required field \"ifs\" missing from comprehension");
6549 return 1; 6435 return 1;
6550 } 6436 }
6551 *out = comprehension(target, iter, ifs, arena); 6437 *out = comprehension(target, iter, ifs, arena);
6572 int res; 6458 int res;
6573 tmp = _PyObject_GetAttrId(obj, &PyId_lineno); 6459 tmp = _PyObject_GetAttrId(obj, &PyId_lineno);
6574 if (tmp == NULL) goto failed; 6460 if (tmp == NULL) goto failed;
6575 res = obj2ast_int(tmp, &lineno, arena); 6461 res = obj2ast_int(tmp, &lineno, arena);
6576 if (res != 0) goto failed; 6462 if (res != 0) goto failed;
6577 Py_XDECREF(tmp); 6463 Py_CLEAR(tmp);
6578 tmp = NULL;
6579 } else { 6464 } else {
6580 PyErr_SetString(PyExc_TypeError, "required field \"lineno\" missing from excepthandler"); 6465 PyErr_SetString(PyExc_TypeError, "required field \"lineno\" missing from excepthandler");
6581 return 1; 6466 return 1;
6582 } 6467 }
6583 if (_PyObject_HasAttrId(obj, &PyId_col_offset)) { 6468 if (_PyObject_HasAttrId(obj, &PyId_col_offset)) {
6584 int res; 6469 int res;
6585 tmp = _PyObject_GetAttrId(obj, &PyId_col_offset); 6470 tmp = _PyObject_GetAttrId(obj, &PyId_col_offset);
6586 if (tmp == NULL) goto failed; 6471 if (tmp == NULL) goto failed;
6587 res = obj2ast_int(tmp, &col_offset, arena); 6472 res = obj2ast_int(tmp, &col_offset, arena);
6588 if (res != 0) goto failed; 6473 if (res != 0) goto failed;
6589 Py_XDECREF(tmp); 6474 Py_CLEAR(tmp);
6590 tmp = NULL;
6591 } else { 6475 } else {
6592 PyErr_SetString(PyExc_TypeError, "required field \"col_offset\" missing from excepthandler"); 6476 PyErr_SetString(PyExc_TypeError, "required field \"col_offset\" missing from excepthandler");
6593 return 1; 6477 return 1;
6594 } 6478 }
6595 isinstance = PyObject_IsInstance(obj, (PyObject*)ExceptHandler_type); 6479 isinstance = PyObject_IsInstance(obj, (PyObject*)ExceptHandler_type);
6605 int res; 6489 int res;
6606 tmp = _PyObject_GetAttrId(obj, &PyId_type); 6490 tmp = _PyObject_GetAttrId(obj, &PyId_type);
6607 if (tmp == NULL) goto failed; 6491 if (tmp == NULL) goto failed;
6608 res = obj2ast_expr(tmp, &type, arena); 6492 res = obj2ast_expr(tmp, &type, arena);
6609 if (res != 0) goto failed; 6493 if (res != 0) goto failed;
6610 Py_XDECREF(tmp); 6494 Py_CLEAR(tmp);
6611 tmp = NULL;
6612 } else { 6495 } else {
6613 type = NULL; 6496 type = NULL;
6614 } 6497 }
6615 if (exists_not_none(obj, &PyId_name)) { 6498 if (exists_not_none(obj, &PyId_name)) {
6616 int res; 6499 int res;
6617 tmp = _PyObject_GetAttrId(obj, &PyId_name); 6500 tmp = _PyObject_GetAttrId(obj, &PyId_name);
6618 if (tmp == NULL) goto failed; 6501 if (tmp == NULL) goto failed;
6619 res = obj2ast_identifier(tmp, &name, arena); 6502 res = obj2ast_identifier(tmp, &name, arena);
6620 if (res != 0) goto failed; 6503 if (res != 0) goto failed;
6621 Py_XDECREF(tmp); 6504 Py_CLEAR(tmp);
6622 tmp = NULL;
6623 } else { 6505 } else {
6624 name = NULL; 6506 name = NULL;
6625 } 6507 }
6626 if (_PyObject_HasAttrId(obj, &PyId_body)) { 6508 if (_PyObject_HasAttrId(obj, &PyId_body)) {
6627 int res; 6509 int res;
6640 stmt_ty value; 6522 stmt_ty value;
6641 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena); 6523 res = obj2ast_stmt(PyList_GET_ITEM(tmp, i), &value, arena);
6642 if (res != 0) goto failed; 6524 if (res != 0) goto failed;
6643 asdl_seq_SET(body, i, value); 6525 asdl_seq_SET(body, i, value);
6644 } 6526 }
6645 Py_XDECREF(tmp); 6527 Py_CLEAR(tmp);
6646 tmp = NULL;
6647 } else { 6528 } else {
6648 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from ExceptHandler"); 6529 PyErr_SetString(PyExc_TypeError, "required field \"body\" missing from ExceptHandler");
6649 return 1; 6530 return 1;
6650 } 6531 }
6651 *out = ExceptHandler(type, name, body, lineno, col_offset, arena); 6532 *out = ExceptHandler(type, name, body, lineno, col_offset, arena);
6687 arg_ty value; 6568 arg_ty value;
6688 res = obj2ast_arg(PyList_GET_ITEM(tmp, i), &value, arena); 6569 res = obj2ast_arg(PyList_GET_ITEM(tmp, i), &value, arena);
6689 if (res != 0) goto failed; 6570 if (res != 0) goto failed;
6690 asdl_seq_SET(args, i, value); 6571 asdl_seq_SET(args, i, value);
6691 } 6572 }
6692 Py_XDECREF(tmp); 6573 Py_CLEAR(tmp);
6693 tmp = NULL;
6694 } else { 6574 } else {
6695 PyErr_SetString(PyExc_TypeError, "required field \"args\" missing from arguments"); 6575 PyErr_SetString(PyExc_TypeError, "required field \"args\" missing from arguments");
6696 return 1; 6576 return 1;
6697 } 6577 }
6698 if (exists_not_none(obj, &PyId_vararg)) { 6578 if (exists_not_none(obj, &PyId_vararg)) {
6699 int res; 6579 int res;
6700 tmp = _PyObject_GetAttrId(obj, &PyId_vararg); 6580 tmp = _PyObject_GetAttrId(obj, &PyId_vararg);
6701 if (tmp == NULL) goto failed; 6581 if (tmp == NULL) goto failed;
6702 res = obj2ast_arg(tmp, &vararg, arena); 6582 res = obj2ast_arg(tmp, &vararg, arena);
6703 if (res != 0) goto failed; 6583 if (res != 0) goto failed;
6704 Py_XDECREF(tmp); 6584 Py_CLEAR(tmp);
6705 tmp = NULL;
6706 } else { 6585 } else {
6707 vararg = NULL; 6586 vararg = NULL;
6708 } 6587 }
6709 if (_PyObject_HasAttrId(obj, &PyId_kwonlyargs)) { 6588 if (_PyObject_HasAttrId(obj, &PyId_kwonlyargs)) {
6710 int res; 6589 int res;
6723 arg_ty value; 6602 arg_ty value;
6724 res = obj2ast_arg(PyList_GET_ITEM(tmp, i), &value, arena); 6603 res = obj2ast_arg(PyList_GET_ITEM(tmp, i), &value, arena);
6725 if (res != 0) goto failed; 6604 if (res != 0) goto failed;
6726 asdl_seq_SET(kwonlyargs, i, value); 6605 asdl_seq_SET(kwonlyargs, i, value);
6727 } 6606 }
6728 Py_XDECREF(tmp); 6607 Py_CLEAR(tmp);
6729 tmp = NULL;
6730 } else { 6608 } else {
6731 PyErr_SetString(PyExc_TypeError, "required field \"kwonlyargs\" missing from arguments"); 6609 PyErr_SetString(PyExc_TypeError, "required field \"kwonlyargs\" missing from arguments");
6732 return 1; 6610 return 1;
6733 } 6611 }
6734 if (_PyObject_HasAttrId(obj, &PyId_kw_defaults)) { 6612 if (_PyObject_HasAttrId(obj, &PyId_kw_defaults)) {
6748 expr_ty value; 6626 expr_ty value;
6749 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 6627 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
6750 if (res != 0) goto failed; 6628 if (res != 0) goto failed;
6751 asdl_seq_SET(kw_defaults, i, value); 6629 asdl_seq_SET(kw_defaults, i, value);
6752 } 6630 }
6753 Py_XDECREF(tmp); 6631 Py_CLEAR(tmp);
6754 tmp = NULL;
6755 } else { 6632 } else {
6756 PyErr_SetString(PyExc_TypeError, "required field \"kw_defaults\" missing from arguments"); 6633 PyErr_SetString(PyExc_TypeError, "required field \"kw_defaults\" missing from arguments");
6757 return 1; 6634 return 1;
6758 } 6635 }
6759 if (exists_not_none(obj, &PyId_kwarg)) { 6636 if (exists_not_none(obj, &PyId_kwarg)) {
6760 int res; 6637 int res;
6761 tmp = _PyObject_GetAttrId(obj, &PyId_kwarg); 6638 tmp = _PyObject_GetAttrId(obj, &PyId_kwarg);
6762 if (tmp == NULL) goto failed; 6639 if (tmp == NULL) goto failed;
6763 res = obj2ast_arg(tmp, &kwarg, arena); 6640 res = obj2ast_arg(tmp, &kwarg, arena);
6764 if (res != 0) goto failed; 6641 if (res != 0) goto failed;
6765 Py_XDECREF(tmp); 6642 Py_CLEAR(tmp);
6766 tmp = NULL;
6767 } else { 6643 } else {
6768 kwarg = NULL; 6644 kwarg = NULL;
6769 } 6645 }
6770 if (_PyObject_HasAttrId(obj, &PyId_defaults)) { 6646 if (_PyObject_HasAttrId(obj, &PyId_defaults)) {
6771 int res; 6647 int res;
6784 expr_ty value; 6660 expr_ty value;
6785 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena); 6661 res = obj2ast_expr(PyList_GET_ITEM(tmp, i), &value, arena);
6786 if (res != 0) goto failed; 6662 if (res != 0) goto failed;
6787 asdl_seq_SET(defaults, i, value); 6663 asdl_seq_SET(defaults, i, value);
6788 } 6664 }
6789 Py_XDECREF(tmp); 6665 Py_CLEAR(tmp);
6790 tmp = NULL;
6791 } else { 6666 } else {
6792 PyErr_SetString(PyExc_TypeError, "required field \"defaults\" missing from arguments"); 6667 PyErr_SetString(PyExc_TypeError, "required field \"defaults\" missing from arguments");
6793 return 1; 6668 return 1;
6794 } 6669 }
6795 *out = arguments(args, vararg, kwonlyargs, kw_defaults, kwarg, defaults, 6670 *out = arguments(args, vararg, kwonlyargs, kw_defaults, kwarg, defaults,
6811 int res; 6686 int res;
6812 tmp = _PyObject_GetAttrId(obj, &PyId_arg); 6687 tmp = _PyObject_GetAttrId(obj, &PyId_arg);
6813 if (tmp == NULL) goto failed; 6688 if (tmp == NULL) goto failed;
6814 res = obj2ast_identifier(tmp, &arg, arena); 6689 res = obj2ast_identifier(tmp, &arg, arena);
6815 if (res != 0) goto failed; 6690 if (res != 0) goto failed;
6816 Py_XDECREF(tmp); 6691 Py_CLEAR(tmp);
6817 tmp = NULL;
6818 } else { 6692 } else {
6819 PyErr_SetString(PyExc_TypeError, "required field \"arg\" missing from arg"); 6693 PyErr_SetString(PyExc_TypeError, "required field \"arg\" missing from arg");
6820 return 1; 6694 return 1;
6821 } 6695 }
6822 if (exists_not_none(obj, &PyId_annotation)) { 6696 if (exists_not_none(obj, &PyId_annotation)) {
6823 int res; 6697 int res;
6824 tmp = _PyObject_GetAttrId(obj, &PyId_annotation); 6698 tmp = _PyObject_GetAttrId(obj, &PyId_annotation);
6825 if (tmp == NULL) goto failed; 6699 if (tmp == NULL) goto failed;
6826 res = obj2ast_expr(tmp, &annotation, arena); 6700 res = obj2ast_expr(tmp, &annotation, arena);
6827 if (res != 0) goto failed; 6701 if (res != 0) goto failed;
6828 Py_XDECREF(tmp); 6702 Py_CLEAR(tmp);
6829 tmp = NULL;
6830 } else { 6703 } else {
6831 annotation = NULL; 6704 annotation = NULL;
6832 } 6705 }
6833 *out = arg(arg, annotation, arena); 6706 *out = arg(arg, annotation, arena);
6834 return 0; 6707 return 0;
6848 int res; 6721 int res;
6849 tmp = _PyObject_GetAttrId(obj, &PyId_arg); 6722 tmp = _PyObject_GetAttrId(obj, &PyId_arg);
6850 if (tmp == NULL) goto failed; 6723 if (tmp == NULL) goto failed;
6851 res = obj2ast_identifier(tmp, &arg, arena); 6724 res = obj2ast_identifier(tmp, &arg, arena);
6852 if (res != 0) goto failed; 6725 if (res != 0) goto failed;
6853 Py_XDECREF(tmp); 6726 Py_CLEAR(tmp);
6854 tmp = NULL;
6855 } else { 6727 } else {
6856 PyErr_SetString(PyExc_TypeError, "required field \"arg\" missing from keyword"); 6728 PyErr_SetString(PyExc_TypeError, "required field \"arg\" missing from keyword");
6857 return 1; 6729 return 1;
6858 } 6730 }
6859 if (_PyObject_HasAttrId(obj, &PyId_value)) { 6731 if (_PyObject_HasAttrId(obj, &PyId_value)) {
6860 int res; 6732 int res;
6861 tmp = _PyObject_GetAttrId(obj, &PyId_value); 6733 tmp = _PyObject_GetAttrId(obj, &PyId_value);
6862 if (tmp == NULL) goto failed; 6734 if (tmp == NULL) goto failed;
6863 res = obj2ast_expr(tmp, &value, arena); 6735 res = obj2ast_expr(tmp, &value, arena);
6864 if (res != 0) goto failed; 6736 if (res != 0) goto failed;
6865 Py_XDECREF(tmp); 6737 Py_CLEAR(tmp);
6866 tmp = NULL;
6867 } else { 6738 } else {
6868 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from keyword"); 6739 PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from keyword");
6869 return 1; 6740 return 1;
6870 } 6741 }
6871 *out = keyword(arg, value, arena); 6742 *out = keyword(arg, value, arena);
6886 int res; 6757 int res;
6887 tmp = _PyObject_GetAttrId(obj, &PyId_name); 6758 tmp = _PyObject_GetAttrId(obj, &PyId_name);
6888 if (tmp == NULL) goto failed; 6759 if (tmp == NULL) goto failed;
6889 res = obj2ast_identifier(tmp, &name, arena); 6760 res = obj2ast_identifier(tmp, &name, arena);
6890 if (res != 0) goto failed; 6761 if (res != 0) goto failed;
6891 Py_XDECREF(tmp); 6762 Py_CLEAR(tmp);
6892 tmp = NULL;
6893 } else { 6763 } else {
6894 PyErr_SetString(PyExc_TypeError, "required field \"name\" missing from alias"); 6764 PyErr_SetString(PyExc_TypeError, "required field \"name\" missing from alias");
6895 return 1; 6765 return 1;
6896 } 6766 }
6897 if (exists_not_none(obj, &PyId_asname)) { 6767 if (exists_not_none(obj, &PyId_asname)) {
6898 int res; 6768 int res;
6899 tmp = _PyObject_GetAttrId(obj, &PyId_asname); 6769 tmp = _PyObject_GetAttrId(obj, &PyId_asname);
6900 if (tmp == NULL) goto failed; 6770 if (tmp == NULL) goto failed;
6901 res = obj2ast_identifier(tmp, &asname, arena); 6771 res = obj2ast_identifier(tmp, &asname, arena);
6902 if (res != 0) goto failed; 6772 if (res != 0) goto failed;
6903 Py_XDECREF(tmp); 6773 Py_CLEAR(tmp);
6904 tmp = NULL;
6905 } else { 6774 } else {
6906 asname = NULL; 6775 asname = NULL;
6907 } 6776 }
6908 *out = alias(name, asname, arena); 6777 *out = alias(name, asname, arena);
6909 return 0; 6778 return 0;
6923 int res; 6792 int res;
6924 tmp = _PyObject_GetAttrId(obj, &PyId_context_expr); 6793 tmp = _PyObject_GetAttrId(obj, &PyId_context_expr);
6925 if (tmp == NULL) goto failed; 6794 if (tmp == NULL) goto failed;
6926 res = obj2ast_expr(tmp, &context_expr, arena); 6795 res = obj2ast_expr(tmp, &context_expr, arena);
6927 if (res != 0) goto failed; 6796 if (res != 0) goto failed;
6928 Py_XDECREF(tmp); 6797 Py_CLEAR(tmp);
6929 tmp = NULL;
6930 } else { 6798 } else {
6931 PyErr_SetString(PyExc_TypeError, "required field \"context_expr\" missing from withitem"); 6799 PyErr_SetString(PyExc_TypeError, "required field \"context_expr\" missing from withitem");
6932 return 1; 6800 return 1;
6933 } 6801 }
6934 if (exists_not_none(obj, &PyId_optional_vars)) { 6802 if (exists_not_none(obj, &PyId_optional_vars)) {
6935 int res; 6803 int res;
6936 tmp = _PyObject_GetAttrId(obj, &PyId_optional_vars); 6804 tmp = _PyObject_GetAttrId(obj, &PyId_optional_vars);
6937 if (tmp == NULL) goto failed; 6805 if (tmp == NULL) goto failed;
6938 res = obj2ast_expr(tmp, &optional_vars, arena); 6806 res = obj2ast_expr(tmp, &optional_vars, arena);
6939 if (res != 0) goto failed; 6807 if (res != 0) goto failed;
6940 Py_XDECREF(tmp); 6808 Py_CLEAR(tmp);
6941 tmp = NULL;
6942 } else { 6809 } else {
6943 optional_vars = NULL; 6810 optional_vars = NULL;
6944 } 6811 }
6945 *out = withitem(context_expr, optional_vars, arena); 6812 *out = withitem(context_expr, optional_vars, arena);
6946 return 0; 6813 return 0;