On Thursday, 30 January 2014 at 23:45:14 UTC, Joseph Rushton Wakeling wrote:
On 31/01/14 00:08, MrSmith wrote:
Somehow if i comment out
//matrix = solveTemp(temp);
it works, but this method works fine, and after it done1 is printed. Strange.

That does rather suggest that it's that method that is causing things to get stuck. Can you share what's inside it? And when you say "this method works fine", do you mean that you've manually tested it with the temp variable that goes in before it hangs?

Could it be that whatever printout you're doing of variables like matrix is missing some tiny differences -- floating-point rounding errors? -- that are responsible for the transformations inside makeTemp or solveTemp behaving wrongly and therefore (in the latter case) getting stuck?

Here is complete code (excluding rational.d by DSimcha) https://gist.github.com/MrSmith33/8732520

It prints:

foreach start
after makeTemp
solveTemp start
before solveTemp return
foreach end

and then stucks.
As you can see it goes through solveTemp method and stops at the foreach end.
So, i can not see any reason why it goes infinite there.

Reply via email to