ports/devel/py-pyicu/files/patch-icu68
2020-11-03 00:56:26 +00:00

97 lines
4 KiB
Text

Regressed by https://github.com/unicode-org/icu/commit/0101e2632c34
Fixed by https://github.com/ovalhub/pyicu/commit/b42d6a754729
measureunit.cpp:466:5: error: unknown type name 'NoUnit'
NoUnit *object;
^
measureunit.cpp:480:45: error: unexpected namespace name 'NoUnit': expected expression
DECLARE_TYPE(NoUnit, t_nounit, MeasureUnit, NoUnit,
^
measureunit.cpp:480:1: error: use of undeclared identifier 'object'
DECLARE_TYPE(NoUnit, t_nounit, MeasureUnit, NoUnit,
^
./macros.h:199:33: note: expanded from macro 'DECLARE_TYPE'
PyObject *wrap_##name(icuClass *object, int flags) \
^
measureunit.cpp:480:1: error: expected '(' for function-style cast or type construction
DECLARE_TYPE(NoUnit, t_nounit, MeasureUnit, NoUnit,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./macros.h:199:45: note: expanded from macro 'DECLARE_TYPE'
PyObject *wrap_##name(icuClass *object, int flags) \
~~~ ^
measureunit.cpp:480:1: error: expected ';' after top level declarator
./macros.h:199:75: note: expanded from macro 'DECLARE_TYPE'
PyObject *wrap_##name(icuClass *object, int flags) \
^
measureunit.cpp:956:23: error: unexpected namespace name 'NoUnit': expected expression
return wrap_NoUnit((NoUnit *) NoUnit::base().clone(), T_OWNED);
^
measureunit.cpp:956:31: error: expected expression
return wrap_NoUnit((NoUnit *) NoUnit::base().clone(), T_OWNED);
^
measureunit.cpp:961:25: error: unexpected namespace name 'NoUnit': expected expression
return wrap_NoUnit((NoUnit *) NoUnit::percent().clone(), T_OWNED);
^
measureunit.cpp:961:33: error: expected expression
return wrap_NoUnit((NoUnit *) NoUnit::percent().clone(), T_OWNED);
^
measureunit.cpp:966:25: error: unexpected namespace name 'NoUnit': expected expression
return wrap_NoUnit((NoUnit *) NoUnit::permille().clone(), T_OWNED);
^
measureunit.cpp:966:33: error: expected expression
return wrap_NoUnit((NoUnit *) NoUnit::permille().clone(), T_OWNED);
^
measureunit.cpp:1193:19: error: unexpected namespace name 'NoUnit': expected expression
REGISTER_TYPE(NoUnit, m);
^
--- measureunit.cpp.orig 2019-10-03 17:11:03 UTC
+++ measureunit.cpp
@@ -463,7 +463,7 @@ DECLARE_TYPE(Measure, t_measure, UObject, Measure, abs
class t_nounit : public _wrapper {
public:
- NoUnit *object;
+ MeasureUnit *object;
};
static PyObject *t_nounit_base(PyTypeObject *type);
@@ -477,7 +477,7 @@ static PyMethodDef t_nounit_methods[] = {
{ NULL, NULL, 0, NULL }
};
-DECLARE_TYPE(NoUnit, t_nounit, MeasureUnit, NoUnit,
+DECLARE_TYPE(NoUnit, t_nounit, MeasureUnit, MeasureUnit,
abstract_init, NULL);
#endif
@@ -953,17 +953,17 @@ DEFINE_RICHCMP(Measure, t_measure);
static PyObject *t_nounit_base(PyTypeObject *type)
{
- return wrap_NoUnit((NoUnit *) NoUnit::base().clone(), T_OWNED);
+ return wrap_NoUnit((MeasureUnit *) NoUnit::base().clone(), T_OWNED);
}
static PyObject *t_nounit_percent(PyTypeObject *type)
{
- return wrap_NoUnit((NoUnit *) NoUnit::percent().clone(), T_OWNED);
+ return wrap_NoUnit((MeasureUnit *) NoUnit::percent().clone(), T_OWNED);
}
static PyObject *t_nounit_permille(PyTypeObject *type)
{
- return wrap_NoUnit((NoUnit *) NoUnit::permille().clone(), T_OWNED);
+ return wrap_NoUnit((MeasureUnit *) NoUnit::permille().clone(), T_OWNED);
}
#endif
@@ -1190,7 +1190,7 @@ void _init_measureunit(PyObject *m)
INSTALL_TYPE(MeasureUnit, m);
INSTALL_TYPE(Measure, m);
#if U_ICU_VERSION_HEX >= VERSION_HEX(60, 0, 0)
- REGISTER_TYPE(NoUnit, m);
+ INSTALL_STRUCT(NoUnit, m);
#endif
REGISTER_TYPE(CurrencyUnit, m);
REGISTER_TYPE(CurrencyAmount, m);