From: Richard Kreckel Date: Tue, 16 Aug 2005 21:47:56 +0000 (+0000) Subject: The patch of 2005-05-01 made it impossible to test the type of a cl_UP X-Git-Tag: cln_1-1-10~23 X-Git-Url: https://www.ginac.de/CLN/cln.git//cln.git?p=cln.git;a=commitdiff_plain;h=e269351d5421e590aa093dacaed90ff46f4b2aa9 The patch of 2005-05-01 made it impossible to test the type of a cl_UP by comparing with &cl_class_univpoly_ring. We need an alternative: * include/cln/object.h (cl_class_flags_modint_ring): New #define... * src/polynomial/elem/cl_UP.cc (cl_class_univpoly_ring): ...used here. * src/polynomial/elem/cl_UP_GF2.h: Likewise. * src/polynomial/elem/cl_UP_MI.h: Likewise. * src/polynomial/elem/cl_UP_gen.h: Likewise. * src/polynomial/elem/cl_UP_number.h: Likewise. --- diff --git a/ChangeLog b/ChangeLog index 1d33bd0..cc1e2de 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2005-08-16 Richard B. Kreckel + + The patch of 2005-05-01 made it impossible to test the type of a cl_UP + by comparing with &cl_class_univpoly_ring. We need an alternative: + * include/cln/object.h (cl_class_flags_modint_ring): New #define... + * src/polynomial/elem/cl_UP.cc (cl_class_univpoly_ring): ...used here. + * src/polynomial/elem/cl_UP_GF2.h: Likewise. + * src/polynomial/elem/cl_UP_MI.h: Likewise. + * src/polynomial/elem/cl_UP_gen.h: Likewise. + * src/polynomial/elem/cl_UP_number.h: Likewise. + 2005-08-15 Richard B. Kreckel * m4/cc.m4 (CL_AS_NOEXECSTACK): New macro... diff --git a/include/cln/object.h b/include/cln/object.h index 4a25443..c5ebc99 100644 --- a/include/cln/object.h +++ b/include/cln/object.h @@ -177,6 +177,8 @@ typedef void (*cl_heap_destructor_function) (cl_heap* pointer); // elements belong to cl_number #define cl_class_flags_modint_ring 32 // all instances are rings whose // elements belong to cl_MI +#define cl_class_flags_univpoly_ring 64 // all instances are rings whose + // elements belong to cl_UP // Function to print an object for debugging, to cerr. typedef void (*cl_heap_dprint_function) (cl_heap* pointer); diff --git a/src/polynomial/elem/cl_UP.cc b/src/polynomial/elem/cl_UP.cc index 8da0200..967e385 100644 --- a/src/polynomial/elem/cl_UP.cc +++ b/src/polynomial/elem/cl_UP.cc @@ -45,7 +45,7 @@ static void cl_univpoly_ring_destructor (cl_heap* pointer) cl_class cl_class_univpoly_ring = { cl_univpoly_ring_destructor, - 0 + cl_class_flags_univpoly_ring }; cl_heap_univpoly_ring::cl_heap_univpoly_ring (const cl_ring& r, cl_univpoly_setops* setopv, cl_univpoly_addops* addopv, cl_univpoly_mulops* mulopv, cl_univpoly_modulops* modulopv, cl_univpoly_polyops* polyopv) diff --git a/src/polynomial/elem/cl_UP_GF2.h b/src/polynomial/elem/cl_UP_GF2.h index a7d1551..2011b34 100644 --- a/src/polynomial/elem/cl_UP_GF2.h +++ b/src/polynomial/elem/cl_UP_GF2.h @@ -1053,7 +1053,7 @@ static void cl_heap_gf2_univpoly_ring_destructor (cl_heap* pointer) cl_class cl_class_gf2_univpoly_ring = { cl_heap_gf2_univpoly_ring_destructor, - 0 + cl_class_flags_univpoly_ring }; // Constructor. diff --git a/src/polynomial/elem/cl_UP_MI.h b/src/polynomial/elem/cl_UP_MI.h index 664dc43..62b2ea6 100644 --- a/src/polynomial/elem/cl_UP_MI.h +++ b/src/polynomial/elem/cl_UP_MI.h @@ -493,7 +493,7 @@ static void cl_heap_modint_univpoly_ring_destructor (cl_heap* pointer) cl_class cl_class_modint_univpoly_ring = { cl_heap_modint_univpoly_ring_destructor, - 0 + cl_class_flags_univpoly_ring }; // Constructor. diff --git a/src/polynomial/elem/cl_UP_gen.h b/src/polynomial/elem/cl_UP_gen.h index ad9093b..9c11643 100644 --- a/src/polynomial/elem/cl_UP_gen.h +++ b/src/polynomial/elem/cl_UP_gen.h @@ -472,7 +472,7 @@ static void cl_heap_gen_univpoly_ring_destructor (cl_heap* pointer) cl_class cl_class_gen_univpoly_ring = { cl_heap_gen_univpoly_ring_destructor, - 0 + cl_class_flags_univpoly_ring }; // Constructor. diff --git a/src/polynomial/elem/cl_UP_number.h b/src/polynomial/elem/cl_UP_number.h index ea879b8..4b8e906 100644 --- a/src/polynomial/elem/cl_UP_number.h +++ b/src/polynomial/elem/cl_UP_number.h @@ -475,7 +475,7 @@ static void cl_heap_num_univpoly_ring_destructor (cl_heap* pointer) cl_class cl_class_num_univpoly_ring = { cl_heap_num_univpoly_ring_destructor, - 0 + cl_class_flags_univpoly_ring }; // Constructor.