File tree Expand file tree Collapse file tree 1 file changed +13
-0
lines changed
quaddtype/numpy_quaddtype/src Expand file tree Collapse file tree 1 file changed +13
-0
lines changed Original file line number Diff line number Diff line change @@ -76,6 +76,19 @@ QuadPrecision_from_object(PyObject *value, QuadBackendType backend)
7676 self -> value .longdouble_value = (long double )val ;
7777 }
7878 }
79+ else if (Py_TYPE (value ) == & QuadPrecision_Type )
80+ {
81+ // todo: not working for ld backend, getting garbage value not sure why?
82+ QuadPrecisionObject * quad_obj = (QuadPrecisionObject * )value ;
83+ // printf("%d %d\n", quad_obj->backend, backend);
84+ // printf("%Lf\n", quad_obj->value.longdouble_value);
85+ if (quad_obj -> backend == BACKEND_SLEEF ) {
86+ self -> value .sleef_value = quad_obj -> value .sleef_value ;
87+ }
88+ else {
89+ self -> value .longdouble_value = quad_obj -> value .longdouble_value ;
90+ }
91+ }
7992 else {
8093 PyObject * type_str = PyObject_Str ((PyObject * )Py_TYPE (value ));
8194 if (type_str != NULL ) {
You can’t perform that action at this time.
0 commit comments