Game Development Community

HEAD busted currently

by John Quigley · in General Discussion · 04/21/2002 (3:05 pm) · 6 replies

The unix HEAD build is busted right now. Don't update. Our crack (smoking) team of experts is working on the problem. I'll update when its fixed.

#1
04/21/2002 (3:11 pm)
Hmm..when did it bust? I downloaded it a few days ago. What is the problem as my build compiles and runs?

-Tim aka Spock
#2
04/21/2002 (3:15 pm)
It was just busted in Mark's checkin from an hour or two ago. There's a line that doesn't compile with gcc:

In file included from game/gameConnection.h:15,
from audio/audio.cc:11:
game/shapeBase.h:626: invalid type 'StringHandle' for default argument to
'StringHandle&'
make[1]: *** [out.GCC3.DEBUG/audio/audio.obj] Error 1

I'm puzzling over it now.
#3
04/21/2002 (4:20 pm)
It was a problem with defaulting the argument in the argument list... I had the equivalent of:

void someFunction(arg1, arg2, StringHandle &s = StringHandle(), arg3 = default, etc.)

and it was complaining about the default value for the reference argument. I'm not sure that it's even valid C++ to do what I did, but it worked in VC...

I've modified shapeBase.h and shapeImage.cc to remove the default value for that parameter.
#4
04/21/2002 (4:43 pm)
Cool, it compiles fine now. Thanks Mark.

This isn't the first time that I've seen c++ that compiles differently between VC and g++. I suppose one of the two isn't following the standard exactly or has a bug.
#5
04/21/2002 (5:50 pm)
*Points to the Microsoft product* :-\
#6
04/21/2002 (7:47 pm)
There is a checkbox in VC6 that undoes some of the MS "improvements" to C++. The most common one is:

in VC, this is an error
for (int i = 0; i < 10; i++)
    cout << i;
for (int i = 0; i < 5; i++)
    cout << i;

The C/C++ standards both say that the above is perfectly valid code, and for some reason MS has never fixed it. Prolly because they use i outside the scope of the loop a lot in windows or something.

Josh