[Project-managers] turn off windows popups in failing unit tests

stefan at math.hu-berlin.de stefan at math.hu-berlin.de
Tue Jun 3 13:31:56 EDT 2008


Hi,

>     I tried Stefan's suggested change in the Osi unitTest over the weekend
> and ran into problems.  The build environment is MinGW / cl, configuring
with
> --enable-doscompile=msvc.  I have the full MSVC8, which includes the
Platform
> SDK as part of the MSVC installation.
>
>     Configuration finds Windows.h, the symbol HAVE_WINDOWS_H is defined,
and
> the relevant bits of code are apparently included.  But cl complains
that the
> symbols SEM_FAILCRITICALERRORS and SEM_NOGPFAULTERRORBOX are not defined.
> Grepping about in the MSVC include directories, these are defined in
WinBase.h
> (I think --- I'm going from memory here).  But an explicit include of
WinBase.h
> didn't help.
>
>     I'll poke at this a bit more, but thought I'd try a post here to see if
> any regular Windows user recognises the problem.  From a quick scan of
> Windows.h, my working theory is that the MinGW environment fails to
define some
> necessary symbol.  Hints appreciated.

Things seem to work fine for me with
- Visual Studio 2003 using Intel 10.0 compiler and Cygwin
- Visual Studio 2003 using MS compiler and Cygwin
- Visual Studio Platform SDK for Windows Server 2003 using Intel 9
compilers and MinGW

>From the WinBase.h from Visual Studio 2003 (I know it is old) I do not see
under which circumstances SEM_FAILCRITICALERRORS and co shouldn't be
defined.

>     I seem to have missed the explanation of why the Platform SDK is bad.

It seem to define a lot of symbols that conflict with other COIN-OR codes,
like "CONST", "small", and "LCID".

> Is there some other solution proposed to suppress this popup window?

One could also check if SEM_FAILCRITICALERRORS and SEM_NOGPFAULTERRORBOX
are actually defined before using them in CoinError.cpp. The hope is, that
if they are defined, then also SetErrorMode will be defined.

Best,
Stefan



More information about the Project-managers mailing list