Open ruskin23 opened 5 years ago
After backtracking with gdb I checked which assertion was failing.
The value of __lock.lock_direction() * __other_lock.lock_direction( )
is 1 while the assert statement says it should be -1
Two questions that could narrow this down:
The attached evolution code will generate the following assertion error:
cfile_12_withbreaks: /home/ruskin/projects/poet/poet_src/Evolve/DissipatingZone.cpp:128: virtual void Evolve::DissipatingZone::check_locks_consistency() const: Assertion __lock || (__lock.lock_direction() * __other_lock.lock_direction( )== -1) || ( __lock.spin_frequency_multiplier() == 1 && ( __lock.orbital_frequency_multiplier() == __lock.lock_direction() * max_abs_orb_mult ) && __other_lock.orbital_frequency_multiplier() == 1 && __other_lock.spin_frequency_multiplier() == 0 && __other_lock.lock_direction() == 1)' failed.
Code: cfile_12_withbreaks.txt