Commit e4f45cbf by John Kessenich

fix g++ compilation issues

parent ec252dfd
......@@ -147,4 +147,4 @@ Versions.o: ParseHelper.h Versions.h ../Include/ShHandle.h SymbolTable.h locali
Constant.o: localintermediate.h ../Include/intermediate.h ../Public/ShaderLang.h SymbolTable.h Versions.h
limits.o: ParseHelper.h
linkValidate.o: localintermediate.h
reflection.o: ../Include/Common.h reflection.h localintermediate.h
reflection.o: ../Include/Common.h reflection.h localintermediate.h gl_types.h
......@@ -3082,11 +3082,10 @@ TIntermTyped* TParseContext::addConstructor(TSourceLoc loc, TIntermNode* node, c
if (op == EOpConstructStruct)
memberTypes = type.getStruct()->begin();
const TType* elementType;
TType elementType;
elementType.shallowCopy(type);
if (type.isArray())
elementType = &TType(type, 0); // dereferenced type
else
elementType = &type;
elementType.dereference();
bool singleArg;
if (aggrNode) {
......@@ -3102,7 +3101,7 @@ TIntermTyped* TParseContext::addConstructor(TSourceLoc loc, TIntermNode* node, c
// If structure constructor or array constructor is being called
// for only one parameter inside the structure, we need to call constructStruct function once.
if (type.isArray())
newNode = constructStruct(node, *elementType, 1, node->getLoc());
newNode = constructStruct(node, elementType, 1, node->getLoc());
else if (op == EOpConstructStruct)
newNode = constructStruct(node, *(*memberTypes).type, 1, node->getLoc());
else
......@@ -3130,7 +3129,7 @@ TIntermTyped* TParseContext::addConstructor(TSourceLoc loc, TIntermNode* node, c
for (TIntermSequence::iterator p = sequenceVector.begin();
p != sequenceVector.end(); p++, paramCount++) {
if (type.isArray())
newNode = constructStruct(*p, *elementType, paramCount+1, node->getLoc());
newNode = constructStruct(*p, elementType, paramCount+1, node->getLoc());
else if (op == EOpConstructStruct)
newNode = constructStruct(*p, *(memberTypes[paramCount]).type, paramCount+1, node->getLoc());
else
......
......@@ -100,7 +100,7 @@ public:
}
}
static const int baseAlignmentVec4Std140 = 16;
static const int baseAlignmentVec4Std140;
// align a value: if 'value' is not aligned to 'alignment', move it up to a multiple of alignment
void align(int& value, int alignment)
......@@ -553,6 +553,8 @@ public:
TReflection& reflection;
};
const int TLiveTraverser::baseAlignmentVec4Std140 = 16;
namespace {
//
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment