[tyrbo@elite world]$ make
mkdir -p .obj
gcc -Wall -Wuninitialized -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wcomment -Wcast-align -Winline -Wno-deprecated -g -march=i686 -O -pthread -pipe -DFX -D_GNU_SOURCE -DINVERSEXY -DWORLD -DDEBUG=5 -DSHAREMEM -DCATCH_CRASH -DNO_PIDLOG -DFIELD_ITEMS -I/usr/include/mysql -I/usr/mysql/include -c ../common/Item.cpp -o .obj/Item.o
../common/Item.cpp: In member function `void
ItemContainerInst::PutItem(unsigned char, const ItemInst&)':
../common/Item.cpp:325: warning: comparison is always false due to limited
range of data type
../common/Item.cpp: In member function `virtual std::string
ItemInst::Serialize(short int) const':
../common/Item.cpp:784: error: integer constant is too large for "long" type
../common/Item.cpp:784: warning: comparison is always true due to limited range
of data type
make: *** [.obj/Item.o] Error 1
[tyrbo@elite world]$
Hrmm...
What distro are you running? Did you update the code to CVS DR5?
Any idea about your compiler version? I will try to "replicate" on my SuSE distro I just bought
The constant that it is complaining about is 0xFFFFFFFFCCCCCCCC which is obviously too large for a 32-bit int.
One of the windows developers was having a crash problem when a variable (according to vs.net) was that value. Which is not possible. We're looking in to how to make both side happy. Until then try setting it to 0xCCCCCCCC as I think that is how GCC < 3.3 is truncating it.
Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.