Merge pull request #52 from baldurk/gcc-warn-fixes
Compile fixes for gcc -Wall
This commit is contained in:
commit
8f1684b7bb
@ -1371,7 +1371,7 @@ spv::Id TGlslangToSpvTraverser::convertGlslangToSpvType(const glslang::TType& ty
|
|||||||
|
|
||||||
// built-in variable decorations
|
// built-in variable decorations
|
||||||
int builtIn = TranslateBuiltInDecoration(glslangType.getQualifier().builtIn);
|
int builtIn = TranslateBuiltInDecoration(glslangType.getQualifier().builtIn);
|
||||||
if (builtIn != spv::BadValue)
|
if ((unsigned int)builtIn != spv::BadValue)
|
||||||
builder.addMemberDecoration(spvType, member, spv::DecorationBuiltIn, builtIn);
|
builder.addMemberDecoration(spvType, member, spv::DecorationBuiltIn, builtIn);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2519,7 +2519,7 @@ spv::Id TGlslangToSpvTraverser::getSymbolId(const glslang::TIntermSymbol* symbol
|
|||||||
|
|
||||||
// built-in variable decorations
|
// built-in variable decorations
|
||||||
int builtIn = TranslateBuiltInDecoration(symbol->getQualifier().builtIn);
|
int builtIn = TranslateBuiltInDecoration(symbol->getQualifier().builtIn);
|
||||||
if (builtIn != spv::BadValue)
|
if ((unsigned int)builtIn != spv::BadValue)
|
||||||
builder.addDecoration(id, spv::DecorationBuiltIn, builtIn);
|
builder.addDecoration(id, spv::DecorationBuiltIn, builtIn);
|
||||||
|
|
||||||
if (linkageOnly)
|
if (linkageOnly)
|
||||||
|
@ -1032,7 +1032,7 @@ Id Builder::createRvalueSwizzle(Id typeId, Id source, std::vector<unsigned>& cha
|
|||||||
// Comments in header
|
// Comments in header
|
||||||
Id Builder::createLvalueSwizzle(Id typeId, Id target, Id source, std::vector<unsigned>& channels)
|
Id Builder::createLvalueSwizzle(Id typeId, Id target, Id source, std::vector<unsigned>& channels)
|
||||||
{
|
{
|
||||||
assert(getNumComponents(source) == channels.size());
|
assert((size_t)getNumComponents(source) == channels.size());
|
||||||
if (channels.size() == 1 && getNumComponents(source) == 1)
|
if (channels.size() == 1 && getNumComponents(source) == 1)
|
||||||
return createCompositeInsert(source, target, typeId, channels.front());
|
return createCompositeInsert(source, target, typeId, channels.front());
|
||||||
|
|
||||||
@ -1471,7 +1471,7 @@ Id Builder::createCompare(Decoration precision, Id value1, Id value2, bool equal
|
|||||||
// OpCompositeConstruct
|
// OpCompositeConstruct
|
||||||
Id Builder::createCompositeConstruct(Id typeId, std::vector<Id>& constituents)
|
Id Builder::createCompositeConstruct(Id typeId, std::vector<Id>& constituents)
|
||||||
{
|
{
|
||||||
assert(isAggregateType(typeId) || getNumTypeComponents(typeId) > 1 && getNumTypeComponents(typeId) == constituents.size());
|
assert((isAggregateType(typeId) || getNumTypeComponents(typeId) > 1) && (size_t)getNumTypeComponents(typeId) == constituents.size());
|
||||||
|
|
||||||
Instruction* op = new Instruction(getUniqueId(), typeId, OpCompositeConstruct);
|
Instruction* op = new Instruction(getUniqueId(), typeId, OpCompositeConstruct);
|
||||||
for (int c = 0; c < (int)constituents.size(); ++c)
|
for (int c = 0; c < (int)constituents.size(); ++c)
|
||||||
|
@ -172,7 +172,7 @@ TIntermTyped* TIntermConstantUnion::fold(TOperator op, const TIntermTyped* const
|
|||||||
case EbtInt:
|
case EbtInt:
|
||||||
if (rightUnionArray[i] == 0)
|
if (rightUnionArray[i] == 0)
|
||||||
newConstArray[i].setIConst(0x7FFFFFFF);
|
newConstArray[i].setIConst(0x7FFFFFFF);
|
||||||
else if (rightUnionArray[i].getIConst() == -1 && unionArray[i].getIConst() == 0x80000000)
|
else if (rightUnionArray[i].getIConst() == -1 && (unsigned int)unionArray[i].getIConst() == 0x80000000)
|
||||||
newConstArray[i].setIConst(0x80000000);
|
newConstArray[i].setIConst(0x80000000);
|
||||||
else
|
else
|
||||||
newConstArray[i].setIConst(unionArray[i].getIConst() / rightUnionArray[i].getIConst());
|
newConstArray[i].setIConst(unionArray[i].getIConst() / rightUnionArray[i].getIConst());
|
||||||
|
@ -3530,13 +3530,13 @@ void TParseContext::setLayoutQualifier(const TSourceLoc& loc, TPublicType& publi
|
|||||||
// the implementation-dependent constant gl_MaxTransformFeedbackBuffers."
|
// the implementation-dependent constant gl_MaxTransformFeedbackBuffers."
|
||||||
if (value >= resources.maxTransformFeedbackBuffers)
|
if (value >= resources.maxTransformFeedbackBuffers)
|
||||||
error(loc, "buffer is too large:", id.c_str(), "gl_MaxTransformFeedbackBuffers is %d", resources.maxTransformFeedbackBuffers);
|
error(loc, "buffer is too large:", id.c_str(), "gl_MaxTransformFeedbackBuffers is %d", resources.maxTransformFeedbackBuffers);
|
||||||
if (value >= TQualifier::layoutXfbBufferEnd)
|
if (value >= (int)TQualifier::layoutXfbBufferEnd)
|
||||||
error(loc, "buffer is too large:", id.c_str(), "internal max is %d", TQualifier::layoutXfbBufferEnd-1);
|
error(loc, "buffer is too large:", id.c_str(), "internal max is %d", TQualifier::layoutXfbBufferEnd-1);
|
||||||
else
|
else
|
||||||
publicType.qualifier.layoutXfbBuffer = value;
|
publicType.qualifier.layoutXfbBuffer = value;
|
||||||
return;
|
return;
|
||||||
} else if (id == "xfb_offset") {
|
} else if (id == "xfb_offset") {
|
||||||
if (value >= TQualifier::layoutXfbOffsetEnd)
|
if (value >= (int)TQualifier::layoutXfbOffsetEnd)
|
||||||
error(loc, "offset is too large:", id.c_str(), "internal max is %d", TQualifier::layoutXfbOffsetEnd-1);
|
error(loc, "offset is too large:", id.c_str(), "internal max is %d", TQualifier::layoutXfbOffsetEnd-1);
|
||||||
else
|
else
|
||||||
publicType.qualifier.layoutXfbOffset = value;
|
publicType.qualifier.layoutXfbOffset = value;
|
||||||
@ -3546,9 +3546,9 @@ void TParseContext::setLayoutQualifier(const TSourceLoc& loc, TPublicType& publi
|
|||||||
// implementation-dependent constant gl_MaxTransformFeedbackInterleavedComponents."
|
// implementation-dependent constant gl_MaxTransformFeedbackInterleavedComponents."
|
||||||
if (value > 4 * resources.maxTransformFeedbackInterleavedComponents)
|
if (value > 4 * resources.maxTransformFeedbackInterleavedComponents)
|
||||||
error(loc, "1/4 stride is too large:", id.c_str(), "gl_MaxTransformFeedbackInterleavedComponents is %d", resources.maxTransformFeedbackInterleavedComponents);
|
error(loc, "1/4 stride is too large:", id.c_str(), "gl_MaxTransformFeedbackInterleavedComponents is %d", resources.maxTransformFeedbackInterleavedComponents);
|
||||||
else if (value >= TQualifier::layoutXfbStrideEnd)
|
else if (value >= (int)TQualifier::layoutXfbStrideEnd)
|
||||||
error(loc, "stride is too large:", id.c_str(), "internal max is %d", TQualifier::layoutXfbStrideEnd-1);
|
error(loc, "stride is too large:", id.c_str(), "internal max is %d", TQualifier::layoutXfbStrideEnd-1);
|
||||||
if (value < TQualifier::layoutXfbStrideEnd)
|
if (value < (int)TQualifier::layoutXfbStrideEnd)
|
||||||
publicType.qualifier.layoutXfbStride = value;
|
publicType.qualifier.layoutXfbStride = value;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -4927,7 +4927,7 @@ void TParseContext::fixBlockLocations(const TSourceLoc& loc, TQualifier& qualifi
|
|||||||
TQualifier& memberQualifier = typeList[member].type->getQualifier();
|
TQualifier& memberQualifier = typeList[member].type->getQualifier();
|
||||||
const TSourceLoc& memberLoc = typeList[member].loc;
|
const TSourceLoc& memberLoc = typeList[member].loc;
|
||||||
if (! memberQualifier.hasLocation()) {
|
if (! memberQualifier.hasLocation()) {
|
||||||
if (nextLocation >= TQualifier::layoutLocationEnd)
|
if (nextLocation >= (int)TQualifier::layoutLocationEnd)
|
||||||
error(memberLoc, "location is too large", "location", "");
|
error(memberLoc, "location is too large", "location", "");
|
||||||
memberQualifier.layoutLocation = nextLocation;
|
memberQualifier.layoutLocation = nextLocation;
|
||||||
memberQualifier.layoutComponent = 0;
|
memberQualifier.layoutComponent = 0;
|
||||||
|
@ -172,7 +172,7 @@ protected:
|
|||||||
void advance()
|
void advance()
|
||||||
{
|
{
|
||||||
++currentChar;
|
++currentChar;
|
||||||
if (currentChar >= static_cast<int>(lengths[currentSource])) {
|
if (currentChar >= static_cast<size_t>(lengths[currentSource])) {
|
||||||
++currentSource;
|
++currentSource;
|
||||||
if (currentSource < numSources) {
|
if (currentSource < numSources) {
|
||||||
loc[currentSource].string = loc[currentSource - 1].string + 1;
|
loc[currentSource].string = loc[currentSource - 1].string + 1;
|
||||||
|
@ -1288,7 +1288,7 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
TShader::TShader(EShLanguage s)
|
TShader::TShader(EShLanguage s)
|
||||||
: pool(0), stage(s), preamble(""), lengths(nullptr), stringNames(nullptr)
|
: pool(0), stage(s), lengths(nullptr), stringNames(nullptr), preamble("")
|
||||||
{
|
{
|
||||||
infoSink = new TInfoSink;
|
infoSink = new TInfoSink;
|
||||||
compiler = new TDeferredCompiler(stage, *infoSink);
|
compiler = new TDeferredCompiler(stage, *infoSink);
|
||||||
|
@ -97,9 +97,12 @@ using namespace glslang;
|
|||||||
|
|
||||||
%{
|
%{
|
||||||
|
|
||||||
#pragma warning(disable : 4065)
|
/* windows only pragma */
|
||||||
#pragma warning(disable : 4127)
|
#ifdef _MSC_VER
|
||||||
#pragma warning(disable : 4244)
|
#pragma warning(disable : 4065)
|
||||||
|
#pragma warning(disable : 4127)
|
||||||
|
#pragma warning(disable : 4244)
|
||||||
|
#endif
|
||||||
|
|
||||||
#define parseContext (*pParseContext)
|
#define parseContext (*pParseContext)
|
||||||
#define yyerror(context, msg) context->parserError(msg)
|
#define yyerror(context, msg) context->parserError(msg)
|
||||||
|
@ -540,7 +540,6 @@ void TIntermediate::checkCallGraphCycles(TInfoSink& infoSink)
|
|||||||
void TIntermediate::inOutLocationCheck(TInfoSink& infoSink)
|
void TIntermediate::inOutLocationCheck(TInfoSink& infoSink)
|
||||||
{
|
{
|
||||||
// ES 3.0 requires all outputs to have location qualifiers if there is more than one output
|
// ES 3.0 requires all outputs to have location qualifiers if there is more than one output
|
||||||
bool fragOutHasLocation = false;
|
|
||||||
bool fragOutWithNoLocation = false;
|
bool fragOutWithNoLocation = false;
|
||||||
int numFragOut = 0;
|
int numFragOut = 0;
|
||||||
|
|
||||||
@ -553,9 +552,7 @@ void TIntermediate::inOutLocationCheck(TInfoSink& infoSink)
|
|||||||
if (language == EShLangFragment) {
|
if (language == EShLangFragment) {
|
||||||
if (qualifier.storage == EvqVaryingOut) {
|
if (qualifier.storage == EvqVaryingOut) {
|
||||||
++numFragOut;
|
++numFragOut;
|
||||||
if (qualifier.hasAnyLocation())
|
if (!qualifier.hasAnyLocation())
|
||||||
fragOutHasLocation = true;
|
|
||||||
else
|
|
||||||
fragOutWithNoLocation = true;
|
fragOutWithNoLocation = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -183,7 +183,7 @@ void TPpContext::InitAtomTable()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Add multiple character scanner tokens :
|
// Add multiple character scanner tokens :
|
||||||
for (int ii = 0; ii < sizeof(tokens)/sizeof(tokens[0]); ii++)
|
for (size_t ii = 0; ii < sizeof(tokens)/sizeof(tokens[0]); ii++)
|
||||||
AddAtomFixed(tokens[ii].str, tokens[ii].val);
|
AddAtomFixed(tokens[ii].str, tokens[ii].val);
|
||||||
|
|
||||||
nextAtom = PpAtomLast;
|
nextAtom = PpAtomLast;
|
||||||
|
@ -82,7 +82,10 @@ NVIDIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|||||||
|
|
||||||
#include "../ParseHelper.h"
|
#include "../ParseHelper.h"
|
||||||
|
|
||||||
#pragma warning(disable : 4127)
|
/* windows only pragma */
|
||||||
|
#ifdef _MSC_VER
|
||||||
|
#pragma warning(disable : 4127)
|
||||||
|
#endif
|
||||||
|
|
||||||
namespace glslang {
|
namespace glslang {
|
||||||
|
|
||||||
|
@ -440,7 +440,7 @@ int TPpContext::tStringInput::scan(TPpToken* ppToken)
|
|||||||
const unsigned remainderMaxInt = 0xFFFFFFFFu - 10 * oneTenthMaxInt;
|
const unsigned remainderMaxInt = 0xFFFFFFFFu - 10 * oneTenthMaxInt;
|
||||||
for (int i = 0; i < numericLen; i++) {
|
for (int i = 0; i < numericLen; i++) {
|
||||||
ch = ppToken->name[i] - '0';
|
ch = ppToken->name[i] - '0';
|
||||||
if ((ival > oneTenthMaxInt) || (ival == oneTenthMaxInt && ch > remainderMaxInt)) {
|
if ((ival > oneTenthMaxInt) || (ival == oneTenthMaxInt && (unsigned)ch > remainderMaxInt)) {
|
||||||
pp->parseContext.ppError(ppToken->loc, "numeric literal too big", "", "");
|
pp->parseContext.ppError(ppToken->loc, "numeric literal too big", "", "");
|
||||||
ival = 0xFFFFFFFFu;
|
ival = 0xFFFFFFFFu;
|
||||||
break;
|
break;
|
||||||
|
@ -100,7 +100,7 @@ TPpContext::Symbol* TPpContext::NewSymbol(int atom)
|
|||||||
{
|
{
|
||||||
Symbol* lSymb;
|
Symbol* lSymb;
|
||||||
char* pch;
|
char* pch;
|
||||||
int ii;
|
size_t ii;
|
||||||
|
|
||||||
lSymb = (Symbol *) mem_Alloc(pool, sizeof(Symbol));
|
lSymb = (Symbol *) mem_Alloc(pool, sizeof(Symbol));
|
||||||
lSymb->atom = atom;
|
lSymb->atom = atom;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user