From 332b173c8265d1c206a15eedd23dab31caa22b8a Mon Sep 17 00:00:00 2001 From: baldurk Date: Wed, 30 Jan 2019 17:29:17 +0000 Subject: [PATCH 1/2] Fix mismatched integer comparison (size_t/unsigned int vs int) --- SPIRV/SpvPostProcess.cpp | 2 +- glslang/MachineIndependent/SymbolTable.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/SPIRV/SpvPostProcess.cpp b/SPIRV/SpvPostProcess.cpp index 04d594cb..d4924f64 100755 --- a/SPIRV/SpvPostProcess.cpp +++ b/SPIRV/SpvPostProcess.cpp @@ -222,7 +222,7 @@ void Builder::postProcess(Instruction& inst) Instruction *idx = module.getInstruction(accessChain->getIdOperand(i)); if (type->getOpCode() == OpTypeStruct) { assert(idx->getOpCode() == OpConstant); - int c = idx->getImmediateOperand(0); + unsigned int c = idx->getImmediateOperand(0); const auto function = [&](const std::unique_ptr& decoration) { if (decoration.get()->getOpCode() == OpMemberDecorate && diff --git a/glslang/MachineIndependent/SymbolTable.cpp b/glslang/MachineIndependent/SymbolTable.cpp index 427666a2..d8d68468 100755 --- a/glslang/MachineIndependent/SymbolTable.cpp +++ b/glslang/MachineIndependent/SymbolTable.cpp @@ -297,7 +297,7 @@ TVariable::TVariable(const TVariable& copyOf) : TSymbol(copyOf) if (copyOf.getNumExtensions() > 0) setExtensions(copyOf.getNumExtensions(), copyOf.getExtensions()); if (copyOf.hasMemberExtensions()) { - for (int m = 0; m < copyOf.type.getStruct()->size(); ++m) { + for (int m = 0; m < (int)copyOf.type.getStruct()->size(); ++m) { if (copyOf.getNumMemberExtensions(m) > 0) setMemberExtensions(m, copyOf.getNumMemberExtensions(m), copyOf.getMemberExtensions(m)); } From 6a87400c1405cd939ddc6e490a2aabc362e13dc2 Mon Sep 17 00:00:00 2001 From: baldurk Date: Wed, 30 Jan 2019 17:29:31 +0000 Subject: [PATCH 2/2] Add missing override specifiers in virtual class --- glslang/MachineIndependent/SymbolTable.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/glslang/MachineIndependent/SymbolTable.h b/glslang/MachineIndependent/SymbolTable.h index 53740522..f9c19034 100755 --- a/glslang/MachineIndependent/SymbolTable.h +++ b/glslang/MachineIndependent/SymbolTable.h @@ -345,20 +345,20 @@ protected: class TAnonMember : public TSymbol { public: TAnonMember(const TString* n, unsigned int m, TVariable& a, int an) : TSymbol(n), anonContainer(a), memberNumber(m), anonId(an) { } - virtual TAnonMember* clone() const; + virtual TAnonMember* clone() const override; virtual ~TAnonMember() { } - virtual const TAnonMember* getAsAnonMember() const { return this; } + virtual const TAnonMember* getAsAnonMember() const override { return this; } virtual const TVariable& getAnonContainer() const { return anonContainer; } virtual unsigned int getMemberNumber() const { return memberNumber; } - virtual const TType& getType() const + virtual const TType& getType() const override { const TTypeList& types = *anonContainer.getType().getStruct(); return *types[memberNumber].type; } - virtual TType& getWritableType() + virtual TType& getWritableType() override { assert(writable); const TTypeList& types = *anonContainer.getType().getStruct(); @@ -373,7 +373,7 @@ public: virtual const char** getExtensions() const override { return anonContainer.getMemberExtensions(memberNumber); } virtual int getAnonId() const { return anonId; } - virtual void dump(TInfoSink &infoSink) const; + virtual void dump(TInfoSink &infoSink) const override; protected: explicit TAnonMember(const TAnonMember&);