A strange bug moving from 64bit to 32bit.

So I installed an SSH client on my iPhone today, TouchTerm (which so far I think is excellent, especially how it handles ctrl keys etc.), and the first thing I do? SSH to my server and compile the previously mentioned code. I load it and after changing the font to a fixed width one it all looks good. The puzzle loads, I hit ‘g’ to solve it and …. oh… it got part of the way through the recursive solution and stopped saying ‘Solution Found’. Except it hadn’t. I coded a refresh routine with vi on the phone to make sure it wasn’t a terminal or iphone issue, nope. It really had got part way in and decided the problem was fixed. How odd. The code was written in 64bit Intrepid running in VirtualBox on 64bit Win 7. The server was (it’s upgrading now) running 32bit Jaunty and is only a 32bit system anyhow.

Anyone? Strange strange bug. If the upgrade fixes it I will be surprised as the only external library of note is ncurses and it really isn’t an ncurses problem. My data structures are fairly boring:


struct _cell {
bool readonly;
int value;
};

struct _sudoku {
bool complete;
int iteration;
struct _cell cells[SUDOKU_VALUES][SUDOKU_VALUES];
};

And of that I only actually use the two dimensional array and the value. The readonly, complete and iteration fields are there in case I do implement weirder algorithms as they will be necessary then for distinguishing user input from generated across generations and keeping track of generations, so ancient incomplete ones can be culled as evolutionary dead ends. 🙂 Of course the second one is marked complete the program would end and display it. Anyhow I find the above problem odd, when the upgrades are complete I’ll check and if it persists drop it into gdb for a bit of an autopsy.

This entry was posted in Programming and tagged , , , , , . Bookmark the permalink.

2 Responses to A strange bug moving from 64bit to 32bit.

Comments are closed.