You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#ifdef GNUC
/* Pacify GCC when the user code never invokes YYERROR and the label
yyerrorlab therefore never appears in user code. */
if (0)
goto yyerrorlab;
#endif
Why not just remove the #ifdef?
coinpresolvesingleton.cpp(125) : warning C4804: '>' : unsafe use of type 'bool' in operation
Comment by @LouHafer created at 2011-10-04 20:40:03
Dave, thanks for the ticket. I don't think we will do anything about !#1 and !#2; the code in question is generated by the bison parser generator. (That begs the question, where is the bison source? I'll have to chase that.) !#3 looks like an artifact left by one of our developers. It's disabled (#if 0) in trunk, and that'd be my recommendation if you need to suppress the warning.
I'm going to leave this open while I try to chase down the bison source.
I've removed the empty switch statements from 1) for now and removed the #ifdef __GNUC for 2), but as @LouHafer pointed out, this may come back if someone ever regenerates this code.
The code from point 3) is gone from current CoinUtils versions and we're not going to patch up stable/2.6 anymore.
Issue created by migration from Trac.
Original creator: davewilk
Original creation time: 2011-10-04 20:29:18
Version: stable/2.6 or 2.6.x
CC: xyz-coin@effisols.com
Keywords: libCoinUtils Visual Studio warnings
I received this CoinUtils with Bonmin 1.5.0, so I hope I have specified the correct version of CoinUtils.
Anyway, there are a number of warnings in Visual Studio 2008 coming from compiling libCoinUtils project at
CoinUtils\MSVisualStudio\v9\libCoinUtils\libCoinUtils.vcproj
This is maybe a silly warning, but it is easily suppressed by adding a case label:
case 0: default:
break;
There is following code to suppress this for GCC:
#ifdef GNUC
/* Pacify GCC when the user code never invokes YYERROR and the label
yyerrorlab therefore never appears in user code. */
if (0)
goto yyerrorlab;
#endif
Why not just remove the #ifdef?
This comes from the following weird piece of code
if (prob->tuning_>10) {
// really for gcc 4.6 compiler bug
printf("jcol %d %g %g irow %d %g %g coeff %g\n",
jcol,clo[jcol],cup[jcol],irow,rlo[irow],rup[irow],coeff);
}
I have no idea what the purpose of this is, but the warning can easily be eliminated by casting to int:
if ((int)prob->tuning_ > 10)
Thanks,
David Wilkinson
The text was updated successfully, but these errors were encountered: