diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000000..11c1ae7756 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,18 @@ +language: c +install: + - wget -q -O fb.tar.gz http://downloads.sourceforge.net/fbc/FreeBASIC-0.24.0-linux.tar.gz?download + - tar zxf fb.tar.gz + - mkdir fbinstall + - cd FreeBASIC-0.24.0-linux + - sudo ./install.sh -i ../fbinstall + - cd .. + - ls fbinstall/bin + - sudo apt-get install libncurses5-dev libstdc++6 build-essential libX11-dev libXext-dev libXpm-dev libXrender-dev libXrandr-dev libgpm-dev +script: make FBC=/home/travis/build/mudhairless/fbc/fbinstall/bin/fbc && cd tests && make check +branches: + only: + - master +compiler: + - gcc +notifications: + email: false \ No newline at end of file diff --git a/src/rtlib/io_printusg.c b/src/rtlib/io_printusg.c index 42594eed3c..4c9a69cfaa 100644 --- a/src/rtlib/io_printusg.c +++ b/src/rtlib/io_printusg.c @@ -1386,7 +1386,7 @@ static unsigned long long hScaleDoubleToULL( double value, int *pval_exp ) FBCALL int fb_PrintUsingDouble( int fnum, double value, int mask ) { - int val_exp; + int val_exp = 0; int flags; unsigned long long val_ull = 1; @@ -1422,7 +1422,7 @@ FBCALL int fb_PrintUsingDouble( int fnum, double value, int mask ) FBCALL int fb_PrintUsingSingle( int fnum, float value_f, int mask ) { - int val_exp; + int val_exp = 0; int flags; unsigned long long val_ull = 1; diff --git a/src/rtlib/win32/hinit.c b/src/rtlib/win32/hinit.c index 8e2c30655f..db84fff974 100644 --- a/src/rtlib/win32/hinit.c +++ b/src/rtlib/win32/hinit.c @@ -21,6 +21,14 @@ FB_CONSOLE_CTX __fb_con /* not initialized */; void fb_hInit( void ) { #ifdef HOST_MINGW +#ifndef _clear87 +/* if __STRICT_ANSI__ is defined the _controlfp function is not defined in some versions of mingw-gcc */ +#define _PC_64 0x00000000 +#define _RC_NEAR 0x00000000 +#define _MCW_RC 0x00000300 /* Rounding */ +#define _MCW_PC 0x00030000 /* Precision */ +_CRTIMP unsigned int __cdecl __MINGW_NOTHROW _controlfp (unsigned int unNew, unsigned int unMask); +#endif /* set FPU precision to 64-bit and round to nearest (as in QB) */ _controlfp( _PC_64|_RC_NEAR, _MCW_PC|_MCW_RC ); #elif defined HOST_X86