comparison src/of-sparsersb-1-fixes.patch @ 4184:fc1bee8ff2d4

of-sparsersb: update to v1.0.1 * src/librsb.mk: update version, checksum to rc4. * src/of-sparsersb.mk: update version, checksum to 1.0.1 * src/librsb-1-nobzero.patch: remove patch * src/of-sparsersb-1-cross-build.patch: remove patch * src/of-sparsersb-1-fixes.patch: new patch * dist-files.mk: add of-sparsersb-1-fixes.patch * build_packages.m: update sparsersb version
author John D
date Sun, 07 Aug 2016 19:38:56 -0400
parents
children b7c4178dadc4
comparison
equal deleted inserted replaced
4183:cc549d1865cb 4184:fc1bee8ff2d4
1 diff -ur sparsersb-1.0.1.orig/src/sparsersb.cc sparsersb-1.0.1/src/sparsersb.cc
2 --- sparsersb-1.0.1.orig/src/sparsersb.cc 2016-08-07 18:22:30.539481175 -0400
3 +++ sparsersb-1.0.1/src/sparsersb.cc 2016-08-07 19:29:31.945709584 -0400
4 @@ -1239,7 +1239,7 @@
5
6 private:
7 public:
8 - DECLARE_OCTAVE_ALLOCATOR
9 +// DECLARE_OCTAVE_ALLOCATOR
10 DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
11 };/* end of class octave_sparsersb_mtx definition */
12
13 @@ -1256,7 +1256,8 @@
14 static octave_base_value * default_numeric_conversion_function (const octave_base_value& a)
15 {
16 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
17 - CAST_CONV_ARG (const octave_sparsersb_mtx&);
18 + //CAST_CONV_ARG (const octave_sparsersb_mtx&);
19 + const octave_sparsersb_mtx &v = dynamic_cast<const octave_sparsersb_mtx&> (a)
20 RSBOI_WARN(RSBOI_O_MISSIMPERRMSG);
21 RSBOI_WARN(RSBOI_0_UNFFEMSG);
22 if(v.is_real_type())
23 @@ -1274,7 +1275,8 @@
24 {
25 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
26 RSBOI_WARN(RSBOI_O_MISSIMPERRMSG);
27 - CAST_CONV_ARG (const octave_sparsersb_mtx &);
28 + //CAST_CONV_ARG (const octave_sparsersb_mtx &);
29 + const octave_sparsersb_mtx &v = dynamic_cast<const octave_sparsersb_mtx&> (a);
30 return new octave_sparse_matrix (v.matrix_value ());
31 }
32
33 @@ -1292,7 +1294,8 @@
34 {
35 RSBOI_WARN(RSBOI_O_MISSIMPERRMSG);
36 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
37 - CAST_UNOP_ARG (const octave_sparsersb_mtx&);
38 + // CAST_UNOP_ARG (const octave_sparsersb_mtx&);
39 + const octave_sparsersb_mtx& v = dynamic_cast<const octave_sparsersb_mtx&> (a);
40 return new octave_sparsersb_mtx (v);
41 }
42
43 @@ -1330,21 +1333,24 @@
44 {
45 RSBOI_WARN(RSBOI_O_MISSIMPERRMSG);
46 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
47 - CAST_UNOP_ARG (const octave_sparsersb_mtx&);
48 + //CAST_UNOP_ARG (const octave_sparsersb_mtx&);
49 + const octave_sparsersb_mtx& v = dynamic_cast<const octave_sparsersb_mtx&> (a);
50 return v.cp_ubop(RSB_ELOPF_NEG);
51 }
52
53 DEFUNOP (transpose, sparse_rsb_mtx)
54 {
55 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
56 - CAST_UNOP_ARG (const octave_sparsersb_mtx&);
57 + //CAST_UNOP_ARG (const octave_sparsersb_mtx&);
58 + const octave_sparsersb_mtx& v = dynamic_cast<const octave_sparsersb_mtx&> (a);
59 return v.rsboi_get_scaled_copy(rsboi_pone[0],RSB_TRANSPOSITION_T);
60 }
61
62 DEFUNOP (htranspose, sparse_rsb_mtx)
63 {
64 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
65 - CAST_UNOP_ARG (const octave_sparsersb_mtx&);
66 + //CAST_UNOP_ARG (const octave_sparsersb_mtx&);
67 + const octave_sparsersb_mtx& v = dynamic_cast<const octave_sparsersb_mtx&> (a);
68 return v.rsboi_get_scaled_copy(rsboi_pone[0],RSB_TRANSPOSITION_C);
69 }
70
71 @@ -1454,7 +1460,9 @@
72 DEFBINOP(ldiv, sparse_rsb_mtx, matrix)
73 {
74 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
75 - CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
76 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
77 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
78 + const octave_matrix& v2 = dynamic_cast<const octave_matrix&> (a2);
79
80 if(v1.is__triangular())
81 return rsboi_spsm(v1,v2,RSB_TRANSPOSITION_N);
82 @@ -1469,7 +1477,9 @@
83 DEFBINOP(trans_ldiv, sparse_rsb_mtx, matrix)
84 {
85 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
86 - CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
87 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
88 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
89 + const octave_matrix& v2 = dynamic_cast<const octave_matrix&> (a2);
90
91 if(v1.is__triangular())
92 return rsboi_spsm(v1,v2,RSB_TRANSPOSITION_T);
93 @@ -1485,7 +1495,9 @@
94 DEFBINOP(c_ldiv, sparse_rsb_mtx, matrix)
95 {
96 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
97 - CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
98 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
99 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
100 + const octave_complex_matrix& v2 = dynamic_cast<const octave_complex_matrix&> (a2);
101
102 if(v1.is__triangular())
103 return rsboi_spsm(v1,v2,RSB_TRANSPOSITION_N);
104 @@ -1500,7 +1512,9 @@
105 DEFBINOP(trans_c_ldiv, sparse_rsb_mtx, matrix)
106 {
107 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
108 - CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
109 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
110 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
111 + const octave_complex_matrix& v2 = dynamic_cast<const octave_complex_matrix&> (a2);
112 if(v1.is__triangular())
113 return rsboi_spsm(v1,v2,RSB_TRANSPOSITION_T);
114
115 @@ -1539,7 +1553,9 @@
116 #if RSBOI_WANT_DOUBLE_COMPLEX
117 DEFBINOP(rsb_c_div, sparse_rsb_mtx, complex)
118 {
119 - CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
120 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
121 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
122 + const octave_complex& v2 = dynamic_cast<const octave_complex&> (a2);
123 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
124 return v1.rsboi_get_scaled_copy_inv(v2.complex_value());
125 }
126 @@ -1547,14 +1563,18 @@
127
128 DEFBINOP(rsb_s_div, sparse_rsb_mtx, scalar)
129 {
130 - CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
131 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
132 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
133 + const octave_scalar& v2 = dynamic_cast<const octave_scalar&> (a2);
134 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
135 return v1.rsboi_get_scaled_copy_inv(v2.scalar_value());
136 }
137
138 DEFBINOP(rsb_s_mul, sparse_rsb_mtx, scalar)
139 {
140 - CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
141 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
142 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
143 + const octave_scalar& v2 = dynamic_cast<const octave_scalar&> (a2);
144 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
145 return v1.rsboi_get_scaled_copy(v2.scalar_value());
146 }
147 @@ -1562,7 +1582,9 @@
148 #if RSBOI_WANT_DOUBLE_COMPLEX
149 DEFBINOP(rsb_c_mul, sparse_rsb_mtx, complex)
150 {
151 - CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
152 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
153 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
154 + const octave_complex& v2 = dynamic_cast<const octave_complex&> (a2);
155 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
156 return v1.rsboi_get_scaled_copy(v2.complex_value());
157 }
158 @@ -1581,7 +1603,9 @@
159 {
160 rsb_err_t errval = RSB_ERR_NO_ERROR;
161 RSBOI_FIXME("I dunno how to trigger this!");
162 - CAST_BINOP_ARGS (octave_sparsersb_mtx &, const octave_sparsersb_mtx&);
163 + //CAST_BINOP_ARGS (octave_sparsersb_mtx &, const octave_sparsersb_mtx&);
164 + octave_sparsersb_mtx& v1 = dynamic_cast<octave_sparsersb_mtx&> (a1);
165 + const octave_sparsersb_mtx& v2 = dynamic_cast<const octave_sparsersb_mtx&> (a2);
166 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
167 //rsb_assign(v1.mtxAp, v2.mtxAp);
168 errval = rsb_mtx_clone(&v1.mtxAp,RSB_NUMERICAL_TYPE_SAME_TYPE,RSB_TRANSPOSITION_N,NULL,v2.mtxAp,RSBOI_EXPF);
169 @@ -1590,7 +1614,9 @@
170
171 DEFASSIGNOP (assignm, sparse_rsb_mtx, matrix)
172 {
173 - CAST_BINOP_ARGS (octave_sparsersb_mtx &, const octave_matrix&);
174 + //CAST_BINOP_ARGS (octave_sparsersb_mtx &, const octave_matrix&);
175 + octave_sparsersb_mtx& v1 = dynamic_cast<octave_sparsersb_mtx&> (a1);
176 + const octave_matrix& v2 = dynamic_cast<const octave_matrix&> (a2);
177 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
178 RSBOI_DESTROY(v1.mtxAp);
179 octave_value retval;
180 @@ -1666,7 +1692,9 @@
181
182 DEFBINOP(rsb_el_mul_s, sparse_rsb_mtx, scalar)
183 {
184 - CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
185 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
186 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
187 + const octave_scalar& v2 = dynamic_cast<const octave_scalar&> (a2);
188 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
189 return v1.rsboi_get_scaled_copy(v2.scalar_value());
190 }
191 @@ -1674,7 +1702,9 @@
192 #if RSBOI_WANT_DOUBLE_COMPLEX
193 DEFBINOP(rsb_el_mul_c, sparse_rsb_mtx, complex)
194 {
195 - CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
196 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
197 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
198 + const octave_complex& v2 = dynamic_cast<const octave_complex&> (a2);
199 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
200 return v1.rsboi_get_scaled_copy(v2.complex_value());
201 }
202 @@ -1682,7 +1712,9 @@
203
204 DEFBINOP(rsb_el_div_s, sparse_rsb_mtx, scalar)
205 {
206 - CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
207 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
208 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
209 + const octave_scalar& v2 = dynamic_cast<const octave_scalar&> (a2);
210 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
211 return v1.rsboi_get_scaled_copy_inv(v2.scalar_value());
212 }
213 @@ -1690,7 +1722,9 @@
214 #if RSBOI_WANT_DOUBLE_COMPLEX
215 DEFBINOP(rsb_el_div_c, sparse_rsb_mtx, complex)
216 {
217 - CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
218 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
219 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
220 + const octave_complex& v2 = dynamic_cast<const octave_complex&> (a2);
221 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
222 return v1.rsboi_get_scaled_copy_inv(v2.complex_value());
223 }
224 @@ -1710,21 +1744,27 @@
225 DEFASSIGNOP(rsb_op_el_mul_eq_sc, sparse_rsb_mtx, matrix)
226 {
227 rsb_err_t errval = RSB_ERR_NO_ERROR;
228 - CAST_BINOP_ARGS (octave_sparsersb_mtx &, const octave_matrix&);
229 + //CAST_BINOP_ARGS (octave_sparsersb_mtx &, const octave_matrix&);
230 + octave_sparsersb_mtx& v1 = dynamic_cast<octave_sparsersb_mtx&> (a1);
231 + const octave_matrix& v2 = dynamic_cast<const octave_matrix&> (a2);
232 return v1.scale_rows(v2,false);
233 }
234
235 DEFASSIGNOP(rsb_op_el_div_eq_sc, sparse_rsb_mtx, matrix)
236 {
237 rsb_err_t errval = RSB_ERR_NO_ERROR;
238 - CAST_BINOP_ARGS (octave_sparsersb_mtx &, const octave_matrix&);
239 + //CAST_BINOP_ARGS (octave_sparsersb_mtx &, const octave_matrix&);
240 + octave_sparsersb_mtx& v1 = dynamic_cast<octave_sparsersb_mtx&> (a1);
241 + const octave_matrix& v2 = dynamic_cast<const octave_matrix&> (a2);
242 return v1.scale_rows(v2,true);
243 }
244 #endif /* RSBOI_WANT_DOUBLE_COMPLEX */
245
246 DEFBINOP(el_pow, sparse_rsb_mtx, scalar)
247 {
248 - CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
249 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
250 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
251 + const octave_scalar& v2 = dynamic_cast<const octave_scalar&> (a2);
252 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
253 RSBOI_T alpha=v2.scalar_value();
254 return v1.cp_ubop(RSB_ELOPF_POW,&alpha);
255 @@ -1733,7 +1773,9 @@
256 #ifdef RSB_FULLY_IMPLEMENTED
257 DEFASSIGNOP (assigns, sparse_rsb_mtx, scalar)
258 {
259 - CAST_BINOP_ARGS (octave_sparsersb_mtx &, const octave_scalar&);
260 + //CAST_BINOP_ARGS (octave_sparsersb_mtx &, const octave_scalar&);
261 + octave_sparsersb_mtx& v1 = dynamic_cast<octave_sparsersb_mtx&> (a1);
262 + const octave_scalar& v2 = dynamic_cast<const octave_scalar&> (a2);
263 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
264 v1.assign(idx, v2.matrix_value());
265 RSBOI_WARN(RSBOI_O_MISSIMPERRMSG);
266 @@ -1744,28 +1786,36 @@
267 DEFBINOP(op_sub, sparse_rsb_mtx, sparse_rsb_mtx)
268 {
269 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
270 - CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_sparsersb_mtx&);
271 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_sparsersb_mtx&);
272 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
273 + const octave_sparsersb_mtx& v2 = dynamic_cast<const octave_sparsersb_mtx&> (a2);
274 return v1.rsboi_sppsp(&rsboi_mone[0],v2);
275 }
276
277 DEFBINOP(op_add, sparse_rsb_mtx, sparse_rsb_mtx)
278 {
279 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
280 - CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_sparsersb_mtx&);
281 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_sparsersb_mtx&);
282 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
283 + const octave_sparsersb_mtx& v2 = dynamic_cast<const octave_sparsersb_mtx&> (a2);
284 return v1.rsboi_sppsp(&rsboi_pone[0],v2);
285 }
286
287 DEFBINOP(op_spmul, sparse_rsb_mtx, sparse_rsb_mtx)
288 {
289 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
290 - CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_sparsersb_mtx&);
291 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_sparsersb_mtx&);
292 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
293 + const octave_sparsersb_mtx& v2 = dynamic_cast<const octave_sparsersb_mtx&> (a2);
294 return v1.rsboi_spmsp(v2);
295 }
296
297 DEFBINOP(op_mul, sparse_rsb_mtx, matrix)
298 {
299 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
300 - CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
301 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
302 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
303 + const octave_matrix& v2 = dynamic_cast<const octave_matrix&> (a2);
304 return v1.rsboi_spmm(v2, false);
305 }
306
307 @@ -1773,7 +1823,9 @@
308 {
309 // ".'*" operator
310 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
311 - CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
312 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
313 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
314 + const octave_matrix& v2 = dynamic_cast<const octave_matrix&> (a2);
315 return v1.rsboi_spmm(v2, true);
316 }
317
318 @@ -1781,14 +1833,18 @@
319 DEFBINOP(op_c_mul, sparse_rsb_mtx, matrix)
320 {
321 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
322 - CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
323 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
324 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
325 + const octave_complex_matrix& v2 = dynamic_cast<const octave_complex_matrix&> (a2);
326 return v1.rsboi_spmm(v2, false);
327 }
328
329 DEFBINOP(op_c_trans_mul, sparse_rsb_mtx, matrix)
330 {
331 RSBOI_DEBUG_NOTICE(RSBOI_D_EMPTY_MSG);
332 - CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
333 + //CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
334 + const octave_sparsersb_mtx& v1 = dynamic_cast<const octave_sparsersb_mtx&> (a1);
335 + const octave_complex_matrix& v2 = dynamic_cast<const octave_complex_matrix&> (a2);
336 return v1.rsboi_spmm(v2, true);
337 }
338 #endif /* RSBOI_WANT_DOUBLE_COMPLEX */
339 Only in sparsersb-1.0.1/src: .sparsersb.cc.swp