diff options
author | Andy Nichols <andy.nichols@theqtcompany.com> | 2015-11-03 12:32:50 +0100 |
---|---|---|
committer | Andy Nichols <andy.nichols@theqtcompany.com> | 2015-11-04 16:02:53 +0000 |
commit | bf1aedbfed7a7ce0ce7612bd7614b31ce18a1344 (patch) | |
tree | a0102e46460bcb7aa196972b32255eb05fc4aa9b /src/3rdparty | |
parent | 29aa70ec0eb8f408d5960cf4186ed77f3c3d4b38 (diff) | |
download | qt3d-bf1aedbfed7a7ce0ce7612bd7614b31ce18a1344.tar.gz |
assimp: Remove usage of deprecated keyword register
Change-Id: I1a85b0602c9e2729bab9582dc5325213f3598988
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src/3rdparty')
21 files changed, 412 insertions, 30 deletions
diff --git a/src/3rdparty/assimp/code/3DSConverter.cpp b/src/3rdparty/assimp/code/3DSConverter.cpp index 7bff38f3f..3498a4b21 100644 --- a/src/3rdparty/assimp/code/3DSConverter.cpp +++ b/src/3rdparty/assimp/code/3DSConverter.cpp @@ -396,7 +396,7 @@ void Discreet3DSImporter::ConvertMeshes(aiScene* pcOut) } for (unsigned int q = 0, base = 0; q < aiSplit[p].size();++q) { - register unsigned int index = aiSplit[p][q]; + unsigned int index = aiSplit[p][q]; aiFace& face = meshOut->mFaces[q]; face.mIndices = new unsigned int[3]; diff --git a/src/3rdparty/assimp/code/ACLoader.cpp b/src/3rdparty/assimp/code/ACLoader.cpp index 93e739b4e..687e9acc4 100644 --- a/src/3rdparty/assimp/code/ACLoader.cpp +++ b/src/3rdparty/assimp/code/ACLoader.cpp @@ -489,7 +489,7 @@ aiNode* AC3DImporter::ConvertObjectSection(Object& object, for (it = object.surfaces.begin(); it != end; ++it) { - register unsigned int idx = (*it).mat; + unsigned int idx = (*it).mat; if (idx >= needMat.size()) { DefaultLogger::get()->error("AC3D: material index is out of range"); @@ -617,7 +617,7 @@ aiNode* AC3DImporter::ConvertObjectSection(Object& object, it2 = (*it).entries.begin(); // either a closed or an unclosed line - register unsigned int tmp = (unsigned int)(*it).entries.size(); + unsigned int tmp = (unsigned int)(*it).entries.size(); if (0x2 == type)--tmp; for (unsigned int m = 0; m < tmp;++m) { diff --git a/src/3rdparty/assimp/code/CalcTangentsProcess.cpp b/src/3rdparty/assimp/code/CalcTangentsProcess.cpp index 20ed3ea52..1d5e1bdec 100644 --- a/src/3rdparty/assimp/code/CalcTangentsProcess.cpp +++ b/src/3rdparty/assimp/code/CalcTangentsProcess.cpp @@ -167,7 +167,7 @@ bool CalcTangentsProcess::ProcessMesh( aiMesh* pMesh, unsigned int meshIndex) // their tangent vectors are set to qnan. for (unsigned int i = 0; i < face.mNumIndices;++i) { - register unsigned int idx = face.mIndices[i]; + unsigned int idx = face.mIndices[i]; vertexDone [idx] = true; meshTang [idx] = aiVector3D(qnan); meshBitang [idx] = aiVector3D(qnan); diff --git a/src/3rdparty/assimp/code/FindDegenerates.cpp b/src/3rdparty/assimp/code/FindDegenerates.cpp index 3870e0495..04ca92521 100644 --- a/src/3rdparty/assimp/code/FindDegenerates.cpp +++ b/src/3rdparty/assimp/code/FindDegenerates.cpp @@ -107,7 +107,7 @@ void FindDegeneratesProcess::ExecuteOnMesh( aiMesh* mesh) bool first = true; // check whether the face contains degenerated entries - for (register unsigned int i = 0; i < face.mNumIndices; ++i) + for (unsigned int i = 0; i < face.mNumIndices; ++i) { // Polygons with more than 4 points are allowed to have double points, that is // simulating polygons with holes just with concave polygons. However, @@ -116,7 +116,7 @@ void FindDegeneratesProcess::ExecuteOnMesh( aiMesh* mesh) if (face.mNumIndices > 4) limit = std::min(limit,i+2); - for (register unsigned int t = i+1; t < limit; ++t) + for (unsigned int t = i+1; t < limit; ++t) { if (mesh->mVertices[face.mIndices[i]] == mesh->mVertices[face.mIndices[t]]) { diff --git a/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp b/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp index 6b7659ac4..618e7d3ae 100644 --- a/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp +++ b/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp @@ -89,7 +89,7 @@ void UpdateMeshReferences(aiNode* node, const std::vector<unsigned int>& meshMap unsigned int out = 0; for (unsigned int a = 0; a < node->mNumMeshes;++a) { - register unsigned int ref = node->mMeshes[a]; + unsigned int ref = node->mMeshes[a]; if (UINT_MAX != (ref = meshMapping[ref])) { node->mMeshes[out++] = ref; } diff --git a/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp b/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp index e4f96b6e8..643dc8f48 100644 --- a/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp +++ b/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp @@ -195,7 +195,7 @@ bool GenVertexNormalsProcess::GenMeshVertexNormals (aiMesh* pMesh, unsigned int // Write the smoothed normal back to all affected normals for (unsigned int a = 0; a < verticesFound.size(); ++a) { - register unsigned int vidx = verticesFound[a]; + unsigned int vidx = verticesFound[a]; pcNew[vidx] = pcNor; abHad[vidx] = true; } diff --git a/src/3rdparty/assimp/code/ImproveCacheLocality.cpp b/src/3rdparty/assimp/code/ImproveCacheLocality.cpp index 8cd4ee6a8..b6aa338a6 100644 --- a/src/3rdparty/assimp/code/ImproveCacheLocality.cpp +++ b/src/3rdparty/assimp/code/ImproveCacheLocality.cpp @@ -303,7 +303,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh ivdx = -1; int max_priority = -1; for (unsigned int* piCur = piCandidates;piCur != piCurCandidate;++piCur) { - register const unsigned int dp = *piCur; + const unsigned int dp = *piCur; // must have live triangles if (piNumTriPtr[dp] > 0) { diff --git a/src/3rdparty/assimp/code/LWOFileData.h b/src/3rdparty/assimp/code/LWOFileData.h index d8f4b8d47..88ca9c566 100644 --- a/src/3rdparty/assimp/code/LWOFileData.h +++ b/src/3rdparty/assimp/code/LWOFileData.h @@ -346,7 +346,7 @@ struct VColorChannel : public VMapEntry if (!rawData.empty()) return; // return if already allocated - register unsigned int m = num*dims; + unsigned int m = num*dims; rawData.reserve(m + (m>>2u)); // 25% as extra storage for VMADs rawData.resize(m); diff --git a/src/3rdparty/assimp/code/LWOLoader.cpp b/src/3rdparty/assimp/code/LWOLoader.cpp index 5e5aa8351..e0891b772 100644 --- a/src/3rdparty/assimp/code/LWOLoader.cpp +++ b/src/3rdparty/assimp/code/LWOLoader.cpp @@ -344,7 +344,7 @@ void LWOImporter::InternReadFile( const std::string& pFile, // copy all vertices for (unsigned int q = 0; q < face.mNumIndices;++q,++vert) { - register unsigned int idx = face.mIndices[q]; + unsigned int idx = face.mIndices[q]; *pv++ = layer.mTempPoints[idx] /*- layer.mPivot*/; // process UV coordinates @@ -491,7 +491,7 @@ void LWOImporter::ComputeNormals(aiMesh* mesh, const std::vector<unsigned int>& aiFace& face = *begin; for (unsigned int i = 0; i < face.mNumIndices;++i) { - register unsigned int tt = face.mIndices[i]; + unsigned int tt = face.mIndices[i]; sSort.Add(mesh->mVertices[tt],tt,*it); } } @@ -510,7 +510,7 @@ void LWOImporter::ComputeNormals(aiMesh* mesh, const std::vector<unsigned int>& unsigned int* beginIdx = face.mIndices, *const endIdx = face.mIndices+face.mNumIndices; for (; beginIdx != endIdx; ++beginIdx) { - register unsigned int idx = *beginIdx; + unsigned int idx = *beginIdx; sSort.FindPositions(mesh->mVertices[idx],*it,posEpsilon,poResult,true); std::vector<unsigned int>::const_iterator a, end = poResult.end(); @@ -533,7 +533,7 @@ void LWOImporter::ComputeNormals(aiMesh* mesh, const std::vector<unsigned int>& unsigned int* beginIdx = face.mIndices, *const endIdx = face.mIndices+face.mNumIndices; for (; beginIdx != endIdx; ++beginIdx) { - register unsigned int idx = *beginIdx; + unsigned int idx = *beginIdx; if (vertexDone[idx]) continue; sSort.FindPositions(mesh->mVertices[idx],*it,posEpsilon,poResult,true); @@ -730,7 +730,7 @@ void LWOImporter::LoadLWOPoints(unsigned int length) // --- this function is used for both LWO2 and LWOB but for // LWO2 we need to allocate 25% more storage - it could be we'll // need to duplicate some points later. - register unsigned int regularSize = (unsigned int)mCurLayer->mTempPoints.size() + length / 12; + unsigned int regularSize = (unsigned int)mCurLayer->mTempPoints.size() + length / 12; if (mIsLWO2) { mCurLayer->mTempPoints.reserve ( regularSize + (regularSize>>2u) ); diff --git a/src/3rdparty/assimp/code/MD2Loader.cpp b/src/3rdparty/assimp/code/MD2Loader.cpp index e27ea4bd6..050555bad 100644 --- a/src/3rdparty/assimp/code/MD2Loader.cpp +++ b/src/3rdparty/assimp/code/MD2Loader.cpp @@ -377,7 +377,7 @@ void MD2Importer::InternReadFile( const std::string& pFile, for (unsigned int c = 0; c < 3;++c,++iCurrent) { // validate vertex indices - register unsigned int iIndex = (unsigned int)pcTriangles[i].vertexIndices[c]; + unsigned int iIndex = (unsigned int)pcTriangles[i].vertexIndices[c]; if (iIndex >= m_pcHeader->numVertices) { DefaultLogger::get()->error("MD2: Vertex index is outside the allowed range"); iIndex = m_pcHeader->numVertices-1; diff --git a/src/3rdparty/assimp/code/NFFLoader.cpp b/src/3rdparty/assimp/code/NFFLoader.cpp index b3cbef3d8..b81698a56 100644 --- a/src/3rdparty/assimp/code/NFFLoader.cpp +++ b/src/3rdparty/assimp/code/NFFLoader.cpp @@ -400,7 +400,7 @@ void NFFImporter::InternReadFile( const std::string& pFile, if (TokenMatch(sz,"0x",2)) { hasColor = true; - register unsigned int numIdx = ::strtoul16(sz,&sz); + unsigned int numIdx = ::strtoul16(sz,&sz); aiColor4D clr; clr.a = 1.f; diff --git a/src/3rdparty/assimp/code/OptimizeMeshes.cpp b/src/3rdparty/assimp/code/OptimizeMeshes.cpp index dce0ebddc..85961de0a 100644 --- a/src/3rdparty/assimp/code/OptimizeMeshes.cpp +++ b/src/3rdparty/assimp/code/OptimizeMeshes.cpp @@ -162,7 +162,7 @@ void OptimizeMeshesProcess::ProcessNode( aiNode* pNode) // Find meshes to merge with us for (unsigned int a = i+1; a < pNode->mNumMeshes;++a) { - register unsigned int am = pNode->mMeshes[a]; + unsigned int am = pNode->mMeshes[a]; if (meshes[am].instance_cnt == 1 && CanJoin(im,am,verts,faces)) { merge_list.push_back(mScene->mMeshes[am]); diff --git a/src/3rdparty/assimp/code/PlyParser.cpp b/src/3rdparty/assimp/code/PlyParser.cpp index 048fd5e99..a16853583 100644 --- a/src/3rdparty/assimp/code/PlyParser.cpp +++ b/src/3rdparty/assimp/code/PlyParser.cpp @@ -794,7 +794,7 @@ bool PLY::PropertyInstance::ParseValue( { ai_assert(NULL != pCur && NULL != pCurOut && NULL != out); - register bool ret = true; + bool ret = true; *pCurOut = pCur; switch (eType) { @@ -841,7 +841,7 @@ bool PLY::PropertyInstance::ParseValueBinary( { ai_assert(NULL != pCur && NULL != pCurOut && NULL != out); - register bool ret = true; + bool ret = true; switch (eType) { case EDT_UInt: diff --git a/src/3rdparty/assimp/code/Q3DLoader.cpp b/src/3rdparty/assimp/code/Q3DLoader.cpp index 54b545604..0e436e328 100644 --- a/src/3rdparty/assimp/code/Q3DLoader.cpp +++ b/src/3rdparty/assimp/code/Q3DLoader.cpp @@ -314,7 +314,7 @@ void Q3DImporter::InternReadFile( const std::string& pFile, if (!tex->mWidth || !tex->mHeight) throw DeadlyImportError("Quick3D: Invalid texture. Width or height is zero"); - register unsigned int mul = tex->mWidth * tex->mHeight; + unsigned int mul = tex->mWidth * tex->mHeight; aiTexel* begin = tex->pcData = new aiTexel[mul]; aiTexel* const end = & begin [mul]; diff --git a/src/3rdparty/assimp/code/RemoveVCProcess.cpp b/src/3rdparty/assimp/code/RemoveVCProcess.cpp index 346d84a2d..7c4908fb2 100644 --- a/src/3rdparty/assimp/code/RemoveVCProcess.cpp +++ b/src/3rdparty/assimp/code/RemoveVCProcess.cpp @@ -84,7 +84,7 @@ inline void ArrayDelete(T**& in, unsigned int& num) // "don't remove" flag not set. Nodes with meshes are never deleted. bool UpdateNodeGraph(aiNode* node,std::list<aiNode*>& childsOfParent,bool root) { - register bool b = false; + bool b = false; std::list<aiNode*> mine; for (unsigned int i = 0; i < node->mNumChildren;++i) @@ -271,7 +271,7 @@ bool RemoveVCProcess::ProcessMesh(aiMesh* pMesh) } // handle texture coordinates - register bool b = (0 != (configDeleteFlags & aiComponent_TEXCOORDS)); + bool b = (0 != (configDeleteFlags & aiComponent_TEXCOORDS)); for (unsigned int i = 0, real = 0; real < AI_MAX_NUMBER_OF_TEXTURECOORDS; ++real) { if (!pMesh->mTextureCoords[i])break; diff --git a/src/3rdparty/assimp/code/SmoothingGroups.inl b/src/3rdparty/assimp/code/SmoothingGroups.inl index 55a93943b..156ebf72d 100644 --- a/src/3rdparty/assimp/code/SmoothingGroups.inl +++ b/src/3rdparty/assimp/code/SmoothingGroups.inl @@ -106,7 +106,7 @@ void ComputeNormalsWithSmoothingsGroups(MeshWithSmoothingGroups<T>& sMesh) std::vector<unsigned int> poResult; for (unsigned int c = 0; c < 3;++c) { - register unsigned int idx = (*i).mIndices[c]; + unsigned int idx = (*i).mIndices[c]; if (vertexDone[idx])continue; sSort.FindPositions(sMesh.mPositions[idx],(*i).iSmoothGroup, diff --git a/src/3rdparty/assimp/code/SortByPTypeProcess.cpp b/src/3rdparty/assimp/code/SortByPTypeProcess.cpp index 2b3c9d5c0..7165f4469 100644 --- a/src/3rdparty/assimp/code/SortByPTypeProcess.cpp +++ b/src/3rdparty/assimp/code/SortByPTypeProcess.cpp @@ -289,7 +289,7 @@ void SortByPTypeProcess::Execute( aiScene* pScene) for (unsigned int q = 0; q < in.mNumIndices; ++q) { - register unsigned int idx = in.mIndices[q]; + unsigned int idx = in.mIndices[q]; // process all bones of this index if (avw) diff --git a/src/3rdparty/assimp/code/StringComparison.h b/src/3rdparty/assimp/code/StringComparison.h index 72dee86dd..d38fc86fe 100644 --- a/src/3rdparty/assimp/code/StringComparison.h +++ b/src/3rdparty/assimp/code/StringComparison.h @@ -137,7 +137,7 @@ inline int ASSIMP_stricmp(const char *s1, const char *s2) return ::strcasecmp(s1,s2); #else - register char c1, c2; + char c1, c2; do { c1 = tolower(*s1++); c2 = tolower(*s2++); @@ -156,7 +156,7 @@ inline int ASSIMP_stricmp(const char *s1, const char *s2) */ inline int ASSIMP_stricmp(const std::string& a, const std::string& b) { - register int i = (int)b.length()-(int)a.length(); + int i = (int)b.length()-(int)a.length(); return (i ? i : ASSIMP_stricmp(a.c_str(),b.c_str())); } @@ -186,7 +186,7 @@ inline int ASSIMP_strincmp(const char *s1, const char *s2, unsigned int n) return ::strncasecmp(s1,s2, n); #else - register char c1, c2; + char c1, c2; unsigned int p = 0; do { diff --git a/src/3rdparty/assimp/code/TerragenLoader.cpp b/src/3rdparty/assimp/code/TerragenLoader.cpp index 8c0ab1c75..27775dd9e 100644 --- a/src/3rdparty/assimp/code/TerragenLoader.cpp +++ b/src/3rdparty/assimp/code/TerragenLoader.cpp @@ -225,7 +225,7 @@ void TerragenImporter::InternReadFile( const std::string& pFile, // make verts const float fy = (float)yy, fx = (float)xx; - register unsigned tmp,tmp2; + unsigned tmp,tmp2; *pv++ = aiVector3D(fx,fy, (float)data[(tmp2=x*yy) + xx] * hscale + bheight); *pv++ = aiVector3D(fx,fy+1, (float)data[(tmp=x*(yy+1)) + xx] * hscale + bheight); *pv++ = aiVector3D(fx+1,fy+1,(float)data[tmp + xx+1] * hscale + bheight); diff --git a/src/3rdparty/assimp/contrib/unzip/crypt.h b/src/3rdparty/assimp/contrib/unzip/crypt.h index 622f4bc2e..1362cfcd1 100644 --- a/src/3rdparty/assimp/contrib/unzip/crypt.h +++ b/src/3rdparty/assimp/contrib/unzip/crypt.h @@ -51,7 +51,7 @@ static int update_keys(unsigned long* pkeys,const unsigned long* pcrc_32_tab,int (*(pkeys+1)) += (*(pkeys+0)) & 0xff; (*(pkeys+1)) = (*(pkeys+1)) * 134775813L + 1; { - register int keyshift = (int)((*(pkeys+1)) >> 24); + int keyshift = (int)((*(pkeys+1)) >> 24); (*(pkeys+2)) = CRC32((*(pkeys+2)), keyshift); } return c; diff --git a/src/3rdparty/patches/0003-assimp-Remove-usage-of-deprecated-keyword-register.patch b/src/3rdparty/patches/0003-assimp-Remove-usage-of-deprecated-keyword-register.patch new file mode 100644 index 000000000..f469831c8 --- /dev/null +++ b/src/3rdparty/patches/0003-assimp-Remove-usage-of-deprecated-keyword-register.patch @@ -0,0 +1,382 @@ +From 662d2cabc5b5546c61f8596887c3a9a5cfc0f87b Mon Sep 17 00:00:00 2001 +From: Andy Nichols <andy.nichols@theqtcompany.com> +Date: Tue, 3 Nov 2015 12:32:50 +0100 +Subject: [PATCH] assimp: Remove usage of deprecated keyword register + +Change-Id: I1a85b0602c9e2729bab9582dc5325213f3598988 +--- + src/3rdparty/assimp/code/3DSConverter.cpp | 2 +- + src/3rdparty/assimp/code/ACLoader.cpp | 4 ++-- + src/3rdparty/assimp/code/CalcTangentsProcess.cpp | 2 +- + src/3rdparty/assimp/code/FindDegenerates.cpp | 4 ++-- + src/3rdparty/assimp/code/FindInvalidDataProcess.cpp | 2 +- + src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp | 2 +- + src/3rdparty/assimp/code/ImproveCacheLocality.cpp | 2 +- + src/3rdparty/assimp/code/LWOFileData.h | 2 +- + src/3rdparty/assimp/code/LWOLoader.cpp | 10 +++++----- + src/3rdparty/assimp/code/MD2Loader.cpp | 2 +- + src/3rdparty/assimp/code/NFFLoader.cpp | 2 +- + src/3rdparty/assimp/code/OptimizeMeshes.cpp | 2 +- + src/3rdparty/assimp/code/PlyParser.cpp | 4 ++-- + src/3rdparty/assimp/code/Q3DLoader.cpp | 2 +- + src/3rdparty/assimp/code/RemoveVCProcess.cpp | 4 ++-- + src/3rdparty/assimp/code/SmoothingGroups.inl | 2 +- + src/3rdparty/assimp/code/SortByPTypeProcess.cpp | 2 +- + src/3rdparty/assimp/code/StringComparison.h | 6 +++--- + src/3rdparty/assimp/code/TerragenLoader.cpp | 2 +- + src/3rdparty/assimp/contrib/unzip/crypt.h | 2 +- + 20 files changed, 30 insertions(+), 30 deletions(-) + +diff --git a/src/3rdparty/assimp/code/3DSConverter.cpp b/src/3rdparty/assimp/code/3DSConverter.cpp +index 7bff38f..3498a4b 100644 +--- a/src/3rdparty/assimp/code/3DSConverter.cpp ++++ b/src/3rdparty/assimp/code/3DSConverter.cpp +@@ -396,7 +396,7 @@ void Discreet3DSImporter::ConvertMeshes(aiScene* pcOut) + } + for (unsigned int q = 0, base = 0; q < aiSplit[p].size();++q) + { +- register unsigned int index = aiSplit[p][q]; ++ unsigned int index = aiSplit[p][q]; + aiFace& face = meshOut->mFaces[q]; + + face.mIndices = new unsigned int[3]; +diff --git a/src/3rdparty/assimp/code/ACLoader.cpp b/src/3rdparty/assimp/code/ACLoader.cpp +index 93e739b..687e9ac 100644 +--- a/src/3rdparty/assimp/code/ACLoader.cpp ++++ b/src/3rdparty/assimp/code/ACLoader.cpp +@@ -489,7 +489,7 @@ aiNode* AC3DImporter::ConvertObjectSection(Object& object, + + for (it = object.surfaces.begin(); it != end; ++it) + { +- register unsigned int idx = (*it).mat; ++ unsigned int idx = (*it).mat; + if (idx >= needMat.size()) + { + DefaultLogger::get()->error("AC3D: material index is out of range"); +@@ -617,7 +617,7 @@ aiNode* AC3DImporter::ConvertObjectSection(Object& object, + it2 = (*it).entries.begin(); + + // either a closed or an unclosed line +- register unsigned int tmp = (unsigned int)(*it).entries.size(); ++ unsigned int tmp = (unsigned int)(*it).entries.size(); + if (0x2 == type)--tmp; + for (unsigned int m = 0; m < tmp;++m) + { +diff --git a/src/3rdparty/assimp/code/CalcTangentsProcess.cpp b/src/3rdparty/assimp/code/CalcTangentsProcess.cpp +index 20ed3ea..1d5e1bd 100644 +--- a/src/3rdparty/assimp/code/CalcTangentsProcess.cpp ++++ b/src/3rdparty/assimp/code/CalcTangentsProcess.cpp +@@ -167,7 +167,7 @@ bool CalcTangentsProcess::ProcessMesh( aiMesh* pMesh, unsigned int meshIndex) + // their tangent vectors are set to qnan. + for (unsigned int i = 0; i < face.mNumIndices;++i) + { +- register unsigned int idx = face.mIndices[i]; ++ unsigned int idx = face.mIndices[i]; + vertexDone [idx] = true; + meshTang [idx] = aiVector3D(qnan); + meshBitang [idx] = aiVector3D(qnan); +diff --git a/src/3rdparty/assimp/code/FindDegenerates.cpp b/src/3rdparty/assimp/code/FindDegenerates.cpp +index 3870e04..04ca925 100644 +--- a/src/3rdparty/assimp/code/FindDegenerates.cpp ++++ b/src/3rdparty/assimp/code/FindDegenerates.cpp +@@ -107,7 +107,7 @@ void FindDegeneratesProcess::ExecuteOnMesh( aiMesh* mesh) + bool first = true; + + // check whether the face contains degenerated entries +- for (register unsigned int i = 0; i < face.mNumIndices; ++i) ++ for (unsigned int i = 0; i < face.mNumIndices; ++i) + { + // Polygons with more than 4 points are allowed to have double points, that is + // simulating polygons with holes just with concave polygons. However, +@@ -116,7 +116,7 @@ void FindDegeneratesProcess::ExecuteOnMesh( aiMesh* mesh) + if (face.mNumIndices > 4) + limit = std::min(limit,i+2); + +- for (register unsigned int t = i+1; t < limit; ++t) ++ for (unsigned int t = i+1; t < limit; ++t) + { + if (mesh->mVertices[face.mIndices[i]] == mesh->mVertices[face.mIndices[t]]) + { +diff --git a/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp b/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp +index 6b7659a..618e7d3 100644 +--- a/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp ++++ b/src/3rdparty/assimp/code/FindInvalidDataProcess.cpp +@@ -89,7 +89,7 @@ void UpdateMeshReferences(aiNode* node, const std::vector<unsigned int>& meshMap + unsigned int out = 0; + for (unsigned int a = 0; a < node->mNumMeshes;++a) { + +- register unsigned int ref = node->mMeshes[a]; ++ unsigned int ref = node->mMeshes[a]; + if (UINT_MAX != (ref = meshMapping[ref])) { + node->mMeshes[out++] = ref; + } +diff --git a/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp b/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp +index e4f96b6..643dc8f 100644 +--- a/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp ++++ b/src/3rdparty/assimp/code/GenVertexNormalsProcess.cpp +@@ -195,7 +195,7 @@ bool GenVertexNormalsProcess::GenMeshVertexNormals (aiMesh* pMesh, unsigned int + // Write the smoothed normal back to all affected normals + for (unsigned int a = 0; a < verticesFound.size(); ++a) + { +- register unsigned int vidx = verticesFound[a]; ++ unsigned int vidx = verticesFound[a]; + pcNew[vidx] = pcNor; + abHad[vidx] = true; + } +diff --git a/src/3rdparty/assimp/code/ImproveCacheLocality.cpp b/src/3rdparty/assimp/code/ImproveCacheLocality.cpp +index 8cd4ee6..b6aa338 100644 +--- a/src/3rdparty/assimp/code/ImproveCacheLocality.cpp ++++ b/src/3rdparty/assimp/code/ImproveCacheLocality.cpp +@@ -303,7 +303,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh + ivdx = -1; + int max_priority = -1; + for (unsigned int* piCur = piCandidates;piCur != piCurCandidate;++piCur) { +- register const unsigned int dp = *piCur; ++ const unsigned int dp = *piCur; + + // must have live triangles + if (piNumTriPtr[dp] > 0) { +diff --git a/src/3rdparty/assimp/code/LWOFileData.h b/src/3rdparty/assimp/code/LWOFileData.h +index d8f4b8d..88ca9c5 100644 +--- a/src/3rdparty/assimp/code/LWOFileData.h ++++ b/src/3rdparty/assimp/code/LWOFileData.h +@@ -346,7 +346,7 @@ struct VColorChannel : public VMapEntry + if (!rawData.empty()) + return; // return if already allocated + +- register unsigned int m = num*dims; ++ unsigned int m = num*dims; + rawData.reserve(m + (m>>2u)); // 25% as extra storage for VMADs + rawData.resize(m); + +diff --git a/src/3rdparty/assimp/code/LWOLoader.cpp b/src/3rdparty/assimp/code/LWOLoader.cpp +index 5e5aa83..e0891b7 100644 +--- a/src/3rdparty/assimp/code/LWOLoader.cpp ++++ b/src/3rdparty/assimp/code/LWOLoader.cpp +@@ -344,7 +344,7 @@ void LWOImporter::InternReadFile( const std::string& pFile, + + // copy all vertices + for (unsigned int q = 0; q < face.mNumIndices;++q,++vert) { +- register unsigned int idx = face.mIndices[q]; ++ unsigned int idx = face.mIndices[q]; + *pv++ = layer.mTempPoints[idx] /*- layer.mPivot*/; + + // process UV coordinates +@@ -491,7 +491,7 @@ void LWOImporter::ComputeNormals(aiMesh* mesh, const std::vector<unsigned int>& + aiFace& face = *begin; + for (unsigned int i = 0; i < face.mNumIndices;++i) + { +- register unsigned int tt = face.mIndices[i]; ++ unsigned int tt = face.mIndices[i]; + sSort.Add(mesh->mVertices[tt],tt,*it); + } + } +@@ -510,7 +510,7 @@ void LWOImporter::ComputeNormals(aiMesh* mesh, const std::vector<unsigned int>& + unsigned int* beginIdx = face.mIndices, *const endIdx = face.mIndices+face.mNumIndices; + for (; beginIdx != endIdx; ++beginIdx) + { +- register unsigned int idx = *beginIdx; ++ unsigned int idx = *beginIdx; + sSort.FindPositions(mesh->mVertices[idx],*it,posEpsilon,poResult,true); + std::vector<unsigned int>::const_iterator a, end = poResult.end(); + +@@ -533,7 +533,7 @@ void LWOImporter::ComputeNormals(aiMesh* mesh, const std::vector<unsigned int>& + unsigned int* beginIdx = face.mIndices, *const endIdx = face.mIndices+face.mNumIndices; + for (; beginIdx != endIdx; ++beginIdx) + { +- register unsigned int idx = *beginIdx; ++ unsigned int idx = *beginIdx; + if (vertexDone[idx]) + continue; + sSort.FindPositions(mesh->mVertices[idx],*it,posEpsilon,poResult,true); +@@ -730,7 +730,7 @@ void LWOImporter::LoadLWOPoints(unsigned int length) + // --- this function is used for both LWO2 and LWOB but for + // LWO2 we need to allocate 25% more storage - it could be we'll + // need to duplicate some points later. +- register unsigned int regularSize = (unsigned int)mCurLayer->mTempPoints.size() + length / 12; ++ unsigned int regularSize = (unsigned int)mCurLayer->mTempPoints.size() + length / 12; + if (mIsLWO2) + { + mCurLayer->mTempPoints.reserve ( regularSize + (regularSize>>2u) ); +diff --git a/src/3rdparty/assimp/code/MD2Loader.cpp b/src/3rdparty/assimp/code/MD2Loader.cpp +index e27ea4b..050555b 100644 +--- a/src/3rdparty/assimp/code/MD2Loader.cpp ++++ b/src/3rdparty/assimp/code/MD2Loader.cpp +@@ -377,7 +377,7 @@ void MD2Importer::InternReadFile( const std::string& pFile, + for (unsigned int c = 0; c < 3;++c,++iCurrent) { + + // validate vertex indices +- register unsigned int iIndex = (unsigned int)pcTriangles[i].vertexIndices[c]; ++ unsigned int iIndex = (unsigned int)pcTriangles[i].vertexIndices[c]; + if (iIndex >= m_pcHeader->numVertices) { + DefaultLogger::get()->error("MD2: Vertex index is outside the allowed range"); + iIndex = m_pcHeader->numVertices-1; +diff --git a/src/3rdparty/assimp/code/NFFLoader.cpp b/src/3rdparty/assimp/code/NFFLoader.cpp +index b3cbef3..b81698a 100644 +--- a/src/3rdparty/assimp/code/NFFLoader.cpp ++++ b/src/3rdparty/assimp/code/NFFLoader.cpp +@@ -400,7 +400,7 @@ void NFFImporter::InternReadFile( const std::string& pFile, + if (TokenMatch(sz,"0x",2)) + { + hasColor = true; +- register unsigned int numIdx = ::strtoul16(sz,&sz); ++ unsigned int numIdx = ::strtoul16(sz,&sz); + aiColor4D clr; + clr.a = 1.f; + +diff --git a/src/3rdparty/assimp/code/OptimizeMeshes.cpp b/src/3rdparty/assimp/code/OptimizeMeshes.cpp +index dce0ebd..85961de 100644 +--- a/src/3rdparty/assimp/code/OptimizeMeshes.cpp ++++ b/src/3rdparty/assimp/code/OptimizeMeshes.cpp +@@ -162,7 +162,7 @@ void OptimizeMeshesProcess::ProcessNode( aiNode* pNode) + + // Find meshes to merge with us + for (unsigned int a = i+1; a < pNode->mNumMeshes;++a) { +- register unsigned int am = pNode->mMeshes[a]; ++ unsigned int am = pNode->mMeshes[a]; + if (meshes[am].instance_cnt == 1 && CanJoin(im,am,verts,faces)) { + + merge_list.push_back(mScene->mMeshes[am]); +diff --git a/src/3rdparty/assimp/code/PlyParser.cpp b/src/3rdparty/assimp/code/PlyParser.cpp +index 048fd5e..a168535 100644 +--- a/src/3rdparty/assimp/code/PlyParser.cpp ++++ b/src/3rdparty/assimp/code/PlyParser.cpp +@@ -794,7 +794,7 @@ bool PLY::PropertyInstance::ParseValue( + { + ai_assert(NULL != pCur && NULL != pCurOut && NULL != out); + +- register bool ret = true; ++ bool ret = true; + *pCurOut = pCur; + switch (eType) + { +@@ -841,7 +841,7 @@ bool PLY::PropertyInstance::ParseValueBinary( + { + ai_assert(NULL != pCur && NULL != pCurOut && NULL != out); + +- register bool ret = true; ++ bool ret = true; + switch (eType) + { + case EDT_UInt: +diff --git a/src/3rdparty/assimp/code/Q3DLoader.cpp b/src/3rdparty/assimp/code/Q3DLoader.cpp +index 54b5456..0e436e3 100644 +--- a/src/3rdparty/assimp/code/Q3DLoader.cpp ++++ b/src/3rdparty/assimp/code/Q3DLoader.cpp +@@ -314,7 +314,7 @@ void Q3DImporter::InternReadFile( const std::string& pFile, + if (!tex->mWidth || !tex->mHeight) + throw DeadlyImportError("Quick3D: Invalid texture. Width or height is zero"); + +- register unsigned int mul = tex->mWidth * tex->mHeight; ++ unsigned int mul = tex->mWidth * tex->mHeight; + aiTexel* begin = tex->pcData = new aiTexel[mul]; + aiTexel* const end = & begin [mul]; + +diff --git a/src/3rdparty/assimp/code/RemoveVCProcess.cpp b/src/3rdparty/assimp/code/RemoveVCProcess.cpp +index 346d84a..7c4908f 100644 +--- a/src/3rdparty/assimp/code/RemoveVCProcess.cpp ++++ b/src/3rdparty/assimp/code/RemoveVCProcess.cpp +@@ -84,7 +84,7 @@ inline void ArrayDelete(T**& in, unsigned int& num) + // "don't remove" flag not set. Nodes with meshes are never deleted. + bool UpdateNodeGraph(aiNode* node,std::list<aiNode*>& childsOfParent,bool root) + { +- register bool b = false; ++ bool b = false; + + std::list<aiNode*> mine; + for (unsigned int i = 0; i < node->mNumChildren;++i) +@@ -271,7 +271,7 @@ bool RemoveVCProcess::ProcessMesh(aiMesh* pMesh) + } + + // handle texture coordinates +- register bool b = (0 != (configDeleteFlags & aiComponent_TEXCOORDS)); ++ bool b = (0 != (configDeleteFlags & aiComponent_TEXCOORDS)); + for (unsigned int i = 0, real = 0; real < AI_MAX_NUMBER_OF_TEXTURECOORDS; ++real) + { + if (!pMesh->mTextureCoords[i])break; +diff --git a/src/3rdparty/assimp/code/SmoothingGroups.inl b/src/3rdparty/assimp/code/SmoothingGroups.inl +index 55a9394..156ebf7 100644 +--- a/src/3rdparty/assimp/code/SmoothingGroups.inl ++++ b/src/3rdparty/assimp/code/SmoothingGroups.inl +@@ -106,7 +106,7 @@ void ComputeNormalsWithSmoothingsGroups(MeshWithSmoothingGroups<T>& sMesh) + std::vector<unsigned int> poResult; + for (unsigned int c = 0; c < 3;++c) + { +- register unsigned int idx = (*i).mIndices[c]; ++ unsigned int idx = (*i).mIndices[c]; + if (vertexDone[idx])continue; + + sSort.FindPositions(sMesh.mPositions[idx],(*i).iSmoothGroup, +diff --git a/src/3rdparty/assimp/code/SortByPTypeProcess.cpp b/src/3rdparty/assimp/code/SortByPTypeProcess.cpp +index 2b3c9d5..7165f44 100644 +--- a/src/3rdparty/assimp/code/SortByPTypeProcess.cpp ++++ b/src/3rdparty/assimp/code/SortByPTypeProcess.cpp +@@ -289,7 +289,7 @@ void SortByPTypeProcess::Execute( aiScene* pScene) + + for (unsigned int q = 0; q < in.mNumIndices; ++q) + { +- register unsigned int idx = in.mIndices[q]; ++ unsigned int idx = in.mIndices[q]; + + // process all bones of this index + if (avw) +diff --git a/src/3rdparty/assimp/code/StringComparison.h b/src/3rdparty/assimp/code/StringComparison.h +index 72dee86..d38fc86 100644 +--- a/src/3rdparty/assimp/code/StringComparison.h ++++ b/src/3rdparty/assimp/code/StringComparison.h +@@ -137,7 +137,7 @@ inline int ASSIMP_stricmp(const char *s1, const char *s2) + return ::strcasecmp(s1,s2); + #else + +- register char c1, c2; ++ char c1, c2; + do { + c1 = tolower(*s1++); + c2 = tolower(*s2++); +@@ -156,7 +156,7 @@ inline int ASSIMP_stricmp(const char *s1, const char *s2) + */ + inline int ASSIMP_stricmp(const std::string& a, const std::string& b) + { +- register int i = (int)b.length()-(int)a.length(); ++ int i = (int)b.length()-(int)a.length(); + return (i ? i : ASSIMP_stricmp(a.c_str(),b.c_str())); + } + +@@ -186,7 +186,7 @@ inline int ASSIMP_strincmp(const char *s1, const char *s2, unsigned int n) + return ::strncasecmp(s1,s2, n); + + #else +- register char c1, c2; ++ char c1, c2; + unsigned int p = 0; + do + { +diff --git a/src/3rdparty/assimp/code/TerragenLoader.cpp b/src/3rdparty/assimp/code/TerragenLoader.cpp +index 8c0ab1c..27775dd 100644 +--- a/src/3rdparty/assimp/code/TerragenLoader.cpp ++++ b/src/3rdparty/assimp/code/TerragenLoader.cpp +@@ -225,7 +225,7 @@ void TerragenImporter::InternReadFile( const std::string& pFile, + + // make verts + const float fy = (float)yy, fx = (float)xx; +- register unsigned tmp,tmp2; ++ unsigned tmp,tmp2; + *pv++ = aiVector3D(fx,fy, (float)data[(tmp2=x*yy) + xx] * hscale + bheight); + *pv++ = aiVector3D(fx,fy+1, (float)data[(tmp=x*(yy+1)) + xx] * hscale + bheight); + *pv++ = aiVector3D(fx+1,fy+1,(float)data[tmp + xx+1] * hscale + bheight); +diff --git a/src/3rdparty/assimp/contrib/unzip/crypt.h b/src/3rdparty/assimp/contrib/unzip/crypt.h +index 622f4bc..1362cfc 100644 +--- a/src/3rdparty/assimp/contrib/unzip/crypt.h ++++ b/src/3rdparty/assimp/contrib/unzip/crypt.h +@@ -51,7 +51,7 @@ static int update_keys(unsigned long* pkeys,const unsigned long* pcrc_32_tab,int + (*(pkeys+1)) += (*(pkeys+0)) & 0xff; + (*(pkeys+1)) = (*(pkeys+1)) * 134775813L + 1; + { +- register int keyshift = (int)((*(pkeys+1)) >> 24); ++ int keyshift = (int)((*(pkeys+1)) >> 24); + (*(pkeys+2)) = CRC32((*(pkeys+2)), keyshift); + } + return c; +-- +2.4.9 (Apple Git-60) + |