Changeset 61e9c58 in git
- Timestamp:
- Oct 26, 2020, 6:02:25 PM (3 years ago)
- Branches:
- (u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
- Children:
- ba9e24e67185c12eb7966da1c68fcef2d90666d0
- Parents:
- 4b24c1908038eb4e15e84478236d2f6eac46173c
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
factory/int_pp.cc
r4b24c19 r61e9c58 240 240 InternalCF* InternalPrimePower::divsame( InternalCF * c ) 241 241 { 242 if ( c == this ) { 242 if ( c == this ) 243 { 243 244 if ( deleteObject() ) delete this; 244 245 return CFFactory::basic( 1 ); 245 246 } 246 if ( getRefCount() > 1 ) { 247 if ( getRefCount() > 1 ) 248 { 247 249 decRefCount(); 248 mpz_t dummy, a, b; 249 mpz_init( dummy ); mpz_init( a ); mpz_init( b ); 250 mpz_t a, b; 251 mpz_init( a ); mpz_init( b ); 252 #ifdef SING_NDEBUG 253 mpz_gcdext( NULL, a, b, primepow, MPI( c ) ); 254 #else 255 mpz_t dummy; mpz_init( dummy ); 250 256 mpz_gcdext( dummy, a, b, primepow, MPI( c ) ); 251 257 ASSERT( mpz_cmp_si( dummy, 1 ) == 0, "illegal inversion" ); 252 mpz_clear( dummy ); mpz_clear( a ); 258 mpz_clear( dummy ); 259 #endif 260 mpz_clear( a ); 253 261 if ( mpz_cmp_si( b, 0 ) < 0 ) 254 262 mpz_add( b, b, primepow ); … … 257 265 return new InternalPrimePower( b ); 258 266 } 259 else { 260 mpz_t dummy, a, b; 261 mpz_init( dummy ); mpz_init( a ); mpz_init( b ); 267 else 268 { 269 mpz_t a, b; mpz_init( a ); mpz_init( b ); 270 #ifdef SING_NDEBUG 271 mpz_gcdext( NULL, a, b, primepow, MPI( c ) ); 272 #else 273 mpz_t dummy; mpz_init( dummy ); 262 274 mpz_gcdext( dummy, a, b, primepow, MPI( c ) ); 263 275 ASSERT( mpz_cmp_si( dummy, 1 ) == 0, "illegal inversion" ); 276 mpz_clear(dummy); 277 #endif 264 278 if ( mpz_cmp_si( b, 0 ) < 0 ) 265 279 mpz_add( b, b, primepow ); 266 280 mpz_mul( thempi, b, thempi ); 267 281 mpz_mod( thempi, thempi, primepow ); 268 mpz_clear( dummy ); mpz_clear(a ); mpz_clear( b );282 mpz_clear( a ); mpz_clear( b ); 269 283 return this; 270 284 } … … 293 307 } 294 308 else { 295 mpz_t dummy, a, b; 296 mpz_init( dummy ); mpz_init( a ); mpz_init( b ); 309 mpz_t a, b; 310 mpz_init( a ); mpz_init( b ); 311 #ifdef SING_NDEBUG 312 mpz_gcdext( NULL, a, b, primepow, MPI( c ) ); 313 #else 314 mpz_t dummy; mpz_init( dummy ); 297 315 mpz_gcdext( dummy, a, b, primepow, MPI( c ) ); 298 316 ASSERT( mpz_cmp_si( dummy, 1 ) == 0, "illegal inversion" ); 299 mpz_clear( dummy ); mpz_clear( a ); 317 mpz_clear( dummy ); 318 #endif 319 mpz_clear( a ); 300 320 if ( mpz_cmp_si( b, 0 ) < 0 ) 301 321 mpz_add( b, b, primepow );
Note: See TracChangeset
for help on using the changeset viewer.