I'm working on a C++ program using Project Builder, and I came across something really odd. When running the executable in Unix, I receive a bus error. After some intense sluthing, I discovered where the problem occurs: an if statement that only uses variables (ie if((x > y) || (x < y)){ ). So, naturally, I create a printf() statement just before this to display the variable and the bus error is gone. This works for one of the two variables used in the if statement, but only with stdout. I tried ssprintf(), but that didn't work, but fprintf(stdout, ...) did. What does stdout have to do with these variables ?! Anyone care to explain?