[Libreoffice-commits] core.git: Branch 'feature/chart-opengl2' - 18 commits - chart2/inc chart2/Library_chartopengl.mk chart2/Module_chart2.mk chart2/source config_host.mk.in configure.ac download.lst glm/Makefile glm/Module_glm.mk glm/README glm/UnpackedTarball_glm.mk glm/Wshadow-unix.patch glm/Wshadow-windows.patch include/svx Makefile.fetch RepositoryExternal.mk Repository.mk RepositoryModule_host.mk svx/source
YangZhang
yangzhang at multicorewareinc.com
Mon Dec 23 09:36:56 PST 2013
Makefile.fetch | 1
Repository.mk | 1
RepositoryExternal.mk | 17
RepositoryModule_host.mk | 1
chart2/Library_chartopengl.mk | 3
chart2/Module_chart2.mk | 2
chart2/inc/ChartModel.hxx | 3
chart2/source/inc/InternalDataProvider.hxx | 1
chart2/source/view/inc/AbstractShapeFactory.hxx | 7
chart2/source/view/inc/DummyXShape.hxx | 42
chart2/source/view/inc/OpenglShapeFactory.hxx | 3
chart2/source/view/inc/ShapeFactory.hxx | 4
chart2/source/view/main/AbstractShapeFactory.cxx | 3
chart2/source/view/main/DrawModelWrapper.cxx | 4
chart2/source/view/main/DummyXShape.cxx | 74
chart2/source/view/main/OpenGLRender.cxx | 1004 ++++++++
chart2/source/view/main/OpenGLRender.hxx | 214 +
chart2/source/view/main/OpenglShapeFactory.cxx | 121 -
config_host.mk.in | 1
configure.ac | 5
download.lst | 2
glm/Makefile | 7
glm/Module_glm.mk | 20
glm/README | 3
glm/UnpackedTarball_glm.mk | 16
glm/Wshadow-unix.patch | 2659 +++++++++++++++++++++++
glm/Wshadow-windows.patch | 2659 +++++++++++++++++++++++
include/svx/unoshape.hxx | 23
svx/source/unodraw/unoshap4.cxx | 8
29 files changed, 6850 insertions(+), 58 deletions(-)
New commits:
commit 2332f6c7e4650dfd77205e7741286553808d825f
Author: YangZhang <yangzhang at multicorewareinc.com>
Date: Fri Dec 20 17:41:24 2013 +0800
Fix warning of OpenGL
Change-Id: Iceb26e5245470fe9a23c41f0b448481aa7a1a1eb
diff --git a/chart2/source/view/main/OpenGLRender.cxx b/chart2/source/view/main/OpenGLRender.cxx
index ffe7293..92489c3 100644
--- a/chart2/source/view/main/OpenGLRender.cxx
+++ b/chart2/source/view/main/OpenGLRender.cxx
@@ -197,7 +197,7 @@ static const GLfloat g_color_buffer_data[] = {
0.982f, 0.099f, 0.879f
};
#endif
-int static checkGLError(char *file, int line)
+int static checkGLError(const char *file, int line)
{
GLenum glErr;
int retCode = 0;
@@ -220,6 +220,13 @@ int static checkGLError(char *file, int line)
#define CHECK_GL_ERROR() checkGLError(__FILE__, __LINE__)
+#define CHECK_GL_FRAME_BUFFER_STATUS() \
+ status = glCheckFramebufferStatus(GL_FRAMEBUFFER);\
+ if( status != GL_FRAMEBUFFER_COMPLETE ) {\
+ printf(" error at line(%d) '%d'\n", __LINE__, status );\
+ return -1;\
+ }
+
GLint OpenGLRender::LoadShaders(const char *vertexShader,const char *fragmentShader)
{
// Create the shaders
@@ -439,7 +446,8 @@ int OpenGLRender::RenderModelf2FBO(float *vertexArray, unsigned int vertexArrayS
//create render buffer object
CreateRenderObj(m_iWidth, m_iHeight);
//create fbo
- CreateFrameBufferObj();
+ if ( CreateFrameBufferObj() !=0 )
+ return -1;
//fill vertex buffer
glBindBuffer(GL_ARRAY_BUFFER, m_VertexBuffer);
glBufferData(GL_ARRAY_BUFFER, vertexArraySize, vertexArray, GL_STATIC_DRAW);
@@ -487,12 +495,8 @@ int OpenGLRender::RenderModelf2FBO(float *vertexArray, unsigned int vertexArrayS
glDisableVertexAttribArray(m_VertexID);
glDisableVertexAttribArray(m_ColorID);
glUseProgram(0);
- int result = 0;
- GLenum fbResult = glCheckFramebufferStatus(GL_FRAMEBUFFER);
- if( fbResult != GL_FRAMEBUFFER_COMPLETE )
- {
- result = -1;
- }
+ GLenum status;
+ CHECK_GL_FRAME_BUFFER_STATUS();
#if 0
sal_uInt8 *buf = (sal_uInt8 *)malloc(m_iWidth * m_iHeight * 3 + BMP_HEADER_LEN);
CreateBMPHeader(buf, m_iWidth, -m_iHeight);
@@ -515,12 +519,12 @@ int OpenGLRender::RenderModelf2FBO(float *vertexArray, unsigned int vertexArrayS
Bitmap::ScopedWriteAccess pAlphaWriteAccess( aAlpha );
size_t nCurPos = 0;
- for( size_t y = 0; y < m_iHeight; ++y)
+ for( int y = 0; y < m_iHeight; ++y)
{
Scanline pScan = pWriteAccess->GetScanline(y);
Scanline pAlphaScan = pAlphaWriteAccess->GetScanline(y);
- for( size_t x = 0; x < m_iWidth; ++x )
+ for( int x = 0; x < m_iWidth; ++x )
{
*pScan++ = buf[nCurPos];
*pScan++ = buf[nCurPos+1];
@@ -588,7 +592,8 @@ int OpenGLRender::RenderLine2FBO(int wholeFlag)
//create render buffer object
CreateRenderObj(m_iWidth, m_iHeight);
//create fbo
- CreateFrameBufferObj();
+ if ( CreateFrameBufferObj() !=0 )
+ return -1;
}
//bind fbo
glBindFramebuffer(GL_FRAMEBUFFER, m_FboID[m_iFboIdx % 2]);
@@ -633,12 +638,8 @@ int OpenGLRender::RenderLine2FBO(int wholeFlag)
free(pointList.pointBuf);
}
m_iPointNum = 0;
- int result = 0;
- GLenum fbResult = glCheckFramebufferStatus(GL_FRAMEBUFFER);
- if( fbResult != GL_FRAMEBUFFER_COMPLETE )
- {
- result = -1;
- }
+ GLenum status;
+ CHECK_GL_FRAME_BUFFER_STATUS();
#if 0
sal_uInt8 *buf = (sal_uInt8 *)malloc(m_iWidth * m_iHeight * 3 + BMP_HEADER_LEN);
CreateBMPHeader(buf, m_iWidth, m_iHeight);
@@ -651,21 +652,21 @@ int OpenGLRender::RenderLine2FBO(int wholeFlag)
boost::scoped_array<sal_uInt8> buf(new sal_uInt8[m_iWidth * m_iHeight * 4]);
glReadPixels(0, 0, m_iWidth, m_iHeight, GL_BGR, GL_UNSIGNED_BYTE, buf.get());
BitmapEx aBmp;
- aBmp.Expand(m_iWidth, m_iHeight);
+ aBmp.SetSizePixel(Size(m_iWidth, m_iHeight));
- Bitmap aBitmap( Size( m_iWidth, m_iHeight ), 24 );
- Bitmap aAlpha( Size( m_iWidth, m_iHeight ), 24 );
+ Bitmap aBitmap( aBmp.GetBitmap() );
+ Bitmap aAlpha( aBmp.GetAlpha().GetBitmap() );
Bitmap::ScopedWriteAccess pWriteAccess( aBitmap );
Bitmap::ScopedWriteAccess pAlphaWriteAccess( aAlpha );
size_t nCurPos = 0;
- for( size_t y = 0; y < m_iHeight; ++y)
+ for( int y = 0; y < m_iHeight; ++y)
{
Scanline pScan = pWriteAccess->GetScanline(y);
Scanline pAlphaScan = pAlphaWriteAccess->GetScanline(y);
- for( size_t x = 0; x < m_iWidth; ++x )
+ for( int x = 0; x < m_iWidth; ++x )
{
*pScan++ = buf[nCurPos];
*pScan++ = buf[nCurPos+1];
@@ -847,32 +848,32 @@ int OpenGLRender::CreateFrameBufferObj()
GLenum status;
// create a framebuffer object, you need to delete them when program exits.
glGenFramebuffers(1, &m_FboID[0]);
- status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
+ CHECK_GL_FRAME_BUFFER_STATUS();
glBindFramebuffer(GL_FRAMEBUFFER, m_FboID[0]);
glBindTexture(GL_TEXTURE_2D, m_TextureObj[0]);
// attach a texture to FBO color attachement point
glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, m_TextureObj[0], 0);
- status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
+ CHECK_GL_FRAME_BUFFER_STATUS();
glBindTexture(GL_TEXTURE_2D, 0);
// attach a renderbuffer to depth attachment point
glBindRenderbuffer(GL_RENDERBUFFER, m_RboID[0]);
glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, m_RboID[0]);
- status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
+ CHECK_GL_FRAME_BUFFER_STATUS();
glBindRenderbuffer(GL_RENDERBUFFER, 0);
glBindFramebuffer(GL_FRAMEBUFFER, 0);
glGenFramebuffers(1, &m_FboID[1]);
- status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
+ CHECK_GL_FRAME_BUFFER_STATUS();
glBindFramebuffer(GL_FRAMEBUFFER, m_FboID[1]);
glBindTexture(GL_TEXTURE_2D, m_TextureObj[1]);
// attach a texture to FBO color attachement point
glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, m_TextureObj[1], 0);
- status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
+ CHECK_GL_FRAME_BUFFER_STATUS();
glBindTexture(GL_TEXTURE_2D, 0);
// attach a renderbuffer to depth attachment point
glBindRenderbuffer(GL_RENDERBUFFER, m_RboID[1]);
glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, m_RboID[1]);
- status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
+ CHECK_GL_FRAME_BUFFER_STATUS();
glBindRenderbuffer(GL_RENDERBUFFER, 0);
glBindFramebuffer(GL_FRAMEBUFFER, 0);
commit a7bfc7cb3fd29883b03e6c5bfca6b583263bda27
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Wed Dec 18 20:04:34 2013 +0100
fix crash when creating bitmaps
Change-Id: I72982abcfcb0edff35a7000944146e8d924c120f
diff --git a/chart2/source/view/main/OpenGLRender.cxx b/chart2/source/view/main/OpenGLRender.cxx
index 7ae8fd3..ffe7293 100644
--- a/chart2/source/view/main/OpenGLRender.cxx
+++ b/chart2/source/view/main/OpenGLRender.cxx
@@ -651,10 +651,10 @@ int OpenGLRender::RenderLine2FBO(int wholeFlag)
boost::scoped_array<sal_uInt8> buf(new sal_uInt8[m_iWidth * m_iHeight * 4]);
glReadPixels(0, 0, m_iWidth, m_iHeight, GL_BGR, GL_UNSIGNED_BYTE, buf.get());
BitmapEx aBmp;
- aBmp.SetSizePixel(Size(m_iWidth, m_iHeight));
+ aBmp.Expand(m_iWidth, m_iHeight);
- Bitmap aBitmap( aBmp.GetBitmap() );
- Bitmap aAlpha( aBmp.GetAlpha().GetBitmap() );
+ Bitmap aBitmap( Size( m_iWidth, m_iHeight ), 24 );
+ Bitmap aAlpha( Size( m_iWidth, m_iHeight ), 24 );
Bitmap::ScopedWriteAccess pWriteAccess( aBitmap );
Bitmap::ScopedWriteAccess pAlphaWriteAccess( aAlpha );
commit 7f113ac4a5469f10cba3a1ad85406a7924c2e548
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Wed Dec 18 01:38:28 2013 +0100
fix weird issue on windows with OPTIONAL being defined somewhere
WTF!!!!!!!!!!!!! Who had the glorious idea to provide a define for OPTIONAL when we use it internally as well
Change-Id: I257f82b62978c73c84faa34c8b341d77c017425e
diff --git a/chart2/source/view/main/OpenglShapeFactory.cxx b/chart2/source/view/main/OpenglShapeFactory.cxx
index dc0f776..70bc1b5 100644
--- a/chart2/source/view/main/OpenglShapeFactory.cxx
+++ b/chart2/source/view/main/OpenglShapeFactory.cxx
@@ -17,6 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
+#include <svx/unoshape.hxx>
#include "OpenglShapeFactory.hxx"
#include "DummyXShape.hxx"
#include "ViewDefines.hxx"
@@ -46,7 +47,6 @@
#include <rtl/math.hxx>
#include <svx/svdocirc.hxx>
#include <svx/svdopath.hxx>
-#include <svx/unoshape.hxx>
#include <basegfx/point/b2dpoint.hxx>
#include <basegfx/matrix/b3dhommatrix.hxx>
commit dd8308cce4c4e5d0d2962a1bef9b6f385617cf19
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Fri Dec 13 12:09:29 2013 +0100
disable this call for now
That one is particular nasty because it creates the chart root shape
before the chart view exists and deletes therefore the uno object
directly.
Change-Id: Idb2318484bac4c2f251f0c51e53b3add3923414c
diff --git a/chart2/source/view/main/DrawModelWrapper.cxx b/chart2/source/view/main/DrawModelWrapper.cxx
index dedf65e..48f2bb7 100644
--- a/chart2/source/view/main/DrawModelWrapper.cxx
+++ b/chart2/source/view/main/DrawModelWrapper.cxx
@@ -235,7 +235,9 @@ uno::Reference< drawing::XDrawPage > DrawModelWrapper::getMainDrawPage()
}
}
//ensure that additional shapes are in front of the chart objects so create the chart root before
- AbstractShapeFactory::getOrCreateShapeFactory(this->getShapeFactory())->getOrCreateChartRootShape( m_xMainDrawPage );
+ // let us disable this call for now
+ // TODO:moggi
+ // AbstractShapeFactory::getOrCreateShapeFactory(this->getShapeFactory())->getOrCreateChartRootShape( m_xMainDrawPage );
return m_xMainDrawPage;
}
uno::Reference< drawing::XDrawPage > DrawModelWrapper::getHiddenDrawPage()
commit cbd2e9790036999b3f6c86be9086d91b8cfa87f7
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Fri Dec 13 12:05:19 2013 +0100
add ugly hack to work around SvxDrawPage::add only accepting SvxShape
Change-Id: I77c292b088a1a1797fba10cc514167a1f3dca917
diff --git a/chart2/Library_chartopengl.mk b/chart2/Library_chartopengl.mk
index 220012e..2532fc3 100644
--- a/chart2/Library_chartopengl.mk
+++ b/chart2/Library_chartopengl.mk
@@ -35,6 +35,7 @@ $(eval $(call gb_Library_use_libraries,chartopengl,\
cppu \
cppuhelper \
sal \
+ svxcore \
vcl \
$(gb_UWINAPI) \
))
diff --git a/chart2/source/view/main/OpenglShapeFactory.cxx b/chart2/source/view/main/OpenglShapeFactory.cxx
index 8e529b8..dc0f776 100644
--- a/chart2/source/view/main/OpenglShapeFactory.cxx
+++ b/chart2/source/view/main/OpenglShapeFactory.cxx
@@ -46,6 +46,7 @@
#include <rtl/math.hxx>
#include <svx/svdocirc.hxx>
#include <svx/svdopath.hxx>
+#include <svx/unoshape.hxx>
#include <basegfx/point/b2dpoint.hxx>
#include <basegfx/matrix/b3dhommatrix.hxx>
@@ -95,7 +96,7 @@ uno::Reference< drawing::XShapes > getChartShape(
xProp->getPropertyValue( UNO_NAME_MISC_OBJ_NAME ) >>= aRet;
if( aRet.equals("com.sun.star.chart2.shapes") )
{
- xRet = uno::Reference< drawing::XShapes >( xShape, uno::UNO_QUERY );
+ xRet = dynamic_cast<SvxDummyShapeContainer*>(xShape.get())->getWrappedShape();
break;
}
}
@@ -119,12 +120,13 @@ uno::Reference< drawing::XShapes > OpenglShapeFactory::getOrCreateChartRootShape
"com.sun.star.drawing.GraphicObjectShape" ), uno::UNO_QUERY );
dummy::DummyChart *pChart = new dummy::DummyChart(xTarget);
m_pChart = (void *)pChart;
+ SvxDummyShapeContainer* pContainer = new SvxDummyShapeContainer(pChart);
xRet = pChart;
#if 0
xRet = new dummy::DummyChart();
m_pChart = (void *)((dummy::DummyChart *)xRet);
#endif
- xDrawPage->add(uno::Reference< drawing::XShape >(xRet, uno::UNO_QUERY_THROW));
+ xDrawPage->add(pContainer);
}
return xRet;
}
diff --git a/include/svx/unoshape.hxx b/include/svx/unoshape.hxx
index c27f8b7..e04609f 100644
--- a/include/svx/unoshape.hxx
+++ b/include/svx/unoshape.hxx
@@ -869,6 +869,29 @@ private:
OUString referer_;
};
+/*
+ * This is a really ugly hack for the chart2 OpenGL backend
+ * SvxShapeGroup::add only accepts objects derived from SvxShape and silently drops
+ * other objects. This fixes my life time problems but I will burn for it in hell.
+ *
+ * The object does nothing and should not be painted. It is just there to ensure that the
+ * wrapped object is not deleted prematurely.
+ */
+class SVX_DLLPUBLIC SvxDummyShapeContainer : public SvxShape
+{
+private:
+ com::sun::star::uno::Reference< com::sun::star::drawing::XShapes >
+ m_xDummyObject;
+
+public:
+ SvxDummyShapeContainer( com::sun::star::uno::Reference< com::sun::star::drawing::XShapes > xWrappedObject );
+ virtual ~SvxDummyShapeContainer() throw();
+
+ com::sun::star::uno::Reference< com::sun::star::drawing::XShapes > getWrappedShape()
+ { return m_xDummyObject; }
+
+};
+
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svx/source/unodraw/unoshap4.cxx b/svx/source/unodraw/unoshap4.cxx
index e932821..f004714 100644
--- a/svx/source/unodraw/unoshap4.cxx
+++ b/svx/source/unodraw/unoshap4.cxx
@@ -943,4 +943,12 @@ bool SvxMediaShape::getPropertyValueImpl( const OUString& rName, const SfxItemPr
}
}
+SvxDummyShapeContainer::SvxDummyShapeContainer(uno::Reference< drawing::XShapes > xObject):
+ m_xDummyObject(xObject)
+{
+}
+
+SvxDummyShapeContainer::~SvxDummyShapeContainer() throw()
+{
+}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit f020b7ae49f1796643853469b43d10f647ffff4d
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Tue Dec 10 11:29:59 2013 +0100
I give up on patching glm
I integrated the patches into the zip file and provide a patched
version on the TDF servers.
Change-Id: I54a042cb75ba729a379e0c841404465a695fb75d
diff --git a/download.lst b/download.lst
index 55ca5d2..224f40e 100644
--- a/download.lst
+++ b/download.lst
@@ -55,8 +55,7 @@ export FONT_SOURCECODE_TARBALL := 0279a21fab6f245e85a6f85fea54f511-source-code-f
export FONT_SOURCESANS_TARBALL := 1e9ddfe25ac9577da709d7b2ea36f939-source-sans-font-1.036.tar.gz
export FREETYPE_TARBALL := dbf2caca1d3afd410a29217a9809d397-freetype-2.4.8.tar.bz2
export GRAPHITE_TARBALL := 7042305e4208af4c2d5249d814ccce58-graphite2-1.2.3.tgz
-export GLM_TARBALL := f070164b78c643431abbc1a97a6d0211-glm-0.9.4.6.zip
-export HSQLDB_TARBALL := 17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip
+export GLM_TARBALL := bae83fa5dc7f081768daace6e199adc3-glm-0.9.4.6-libreoffice.ziexport HSQLDB_TARBALL := 17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip
export HUNSPELL_TARBALL := 3121aaf3e13e5d88dfff13fb4a5f1ab8-hunspell-1.3.2.tar.gz
export HYPHEN_TARBALL := a2f6010987e1c601274ab5d63b72c944-hyphen-2.8.4.tar.gz
export ICU_TARBALL := 9e96ed4c1d99c0d14ac03c140f9f346c-icu4c-52_1-src.tgz
diff --git a/glm/UnpackedTarball_glm.mk b/glm/UnpackedTarball_glm.mk
index 99c5776..e115bff 100644
--- a/glm/UnpackedTarball_glm.mk
+++ b/glm/UnpackedTarball_glm.mk
@@ -13,14 +13,4 @@ $(eval $(call gb_UnpackedTarball_set_tarball,glm,$(GLM_TARBALL)))
$(eval $(call gb_UnpackedTarball_set_patchlevel,glm,1))
-ifeq ($(OS),WNT)
-$(eval $(call gb_UnpackedTarball_add_patches,glm,\
- glm/Wshadow-windows.patch \
-))
-else
-$(eval $(call gb_UnpackedTarball_add_patches,glm,\
- glm/Wshadow-unix.patch \
-))
-endif
-
# vim: set noet sw=4 ts=4:
commit 350832d064a849ff9b8d616bacbf98772d1eb56a
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Mon Dec 9 10:15:45 2013 +0100
next try to get glm patched on windows and linux
Change-Id: Ia17217db6cbf5110926302611a4b37faeacc9bfd
diff --git a/glm/UnpackedTarball_glm.mk b/glm/UnpackedTarball_glm.mk
index 79d93af..99c5776 100644
--- a/glm/UnpackedTarball_glm.mk
+++ b/glm/UnpackedTarball_glm.mk
@@ -13,8 +13,14 @@ $(eval $(call gb_UnpackedTarball_set_tarball,glm,$(GLM_TARBALL)))
$(eval $(call gb_UnpackedTarball_set_patchlevel,glm,1))
+ifeq ($(OS),WNT)
$(eval $(call gb_UnpackedTarball_add_patches,glm,\
- glm/Wshadow.patch \
+ glm/Wshadow-windows.patch \
))
+else
+$(eval $(call gb_UnpackedTarball_add_patches,glm,\
+ glm/Wshadow-unix.patch \
+))
+endif
# vim: set noet sw=4 ts=4:
diff --git a/glm/Wshadow-unix.patch b/glm/Wshadow-unix.patch
new file mode 100644
index 0000000..8607753
--- /dev/null
+++ b/glm/Wshadow-unix.patch
@@ -0,0 +1,2659 @@
+diff -ur glm.org/glm/core/_detail.hpp glm/glm/core/_detail.hpp
+--- glm.org/glm/core/_detail.hpp 2013-12-09 02:05:30.115442079 +0100
++++ glm/glm/core/_detail.hpp 2013-12-09 02:06:33.749941584 +0100
+@@ -136,12 +136,12 @@
+ i(0)
+ {}
+
+- GLM_FUNC_QUALIFIER uif32(float f) :
+- f(f)
++ GLM_FUNC_QUALIFIER uif32(float f_) :
++ f(f_)
+ {}
+
+- GLM_FUNC_QUALIFIER uif32(unsigned int i) :
+- i(i)
++ GLM_FUNC_QUALIFIER uif32(unsigned int i_) :
++ i(i_)
+ {}
+
+ float f;
+@@ -154,12 +154,12 @@
+ i(0)
+ {}
+
+- GLM_FUNC_QUALIFIER uif64(double f) :
+- f(f)
++ GLM_FUNC_QUALIFIER uif64(double f_) :
++ f(f_)
+ {}
+
+- GLM_FUNC_QUALIFIER uif64(uint64 i) :
+- i(i)
++ GLM_FUNC_QUALIFIER uif64(uint64 i_) :
++ i(i_)
+ {}
+
+ double f;
+diff -ur glm.org/glm/core/type_vec1.hpp glm/glm/core/type_vec1.hpp
+--- glm.org/glm/core/type_vec1.hpp 2013-12-08 17:04:59.706365245 +0100
++++ glm/glm/core/type_vec1.hpp 2013-12-08 17:07:20.079840510 +0100
+@@ -86,19 +86,19 @@
+ GLM_FUNC_DECL explicit tvec1(
+ ctor);
+ GLM_FUNC_DECL explicit tvec1(
+- value_type const & s);
++ value_type const & s_);
+
+ //////////////////////////////////////
+ // Swizzle constructors
+
+- GLM_FUNC_DECL tvec1(tref1<T> const & r);
++ GLM_FUNC_DECL tvec1(tref1<T> const & r_);
+
+ //////////////////////////////////////
+ // Convertion scalar constructors
+
+ //! Explicit converions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification)
+ template <typename U>
+- GLM_FUNC_DECL explicit tvec1(U const & s);
++ GLM_FUNC_DECL explicit tvec1(U const & s_);
+
+ //////////////////////////////////////
+ // Convertion vector constructors
+@@ -121,19 +121,19 @@
+ GLM_FUNC_DECL tvec1<T> & operator= (tvec1<U> const & v);
+
+ template <typename U>
+- GLM_FUNC_DECL tvec1<T> & operator+=(U const & s);
++ GLM_FUNC_DECL tvec1<T> & operator+=(U const & s_);
+ template <typename U>
+ GLM_FUNC_DECL tvec1<T> & operator+=(tvec1<U> const & v);
+ template <typename U>
+- GLM_FUNC_DECL tvec1<T> & operator-=(U const & s);
++ GLM_FUNC_DECL tvec1<T> & operator-=(U const & s_);
+ template <typename U>
+ GLM_FUNC_DECL tvec1<T> & operator-=(tvec1<U> const & v);
+ template <typename U>
+- GLM_FUNC_DECL tvec1<T> & operator*=(U const & s);
++ GLM_FUNC_DECL tvec1<T> & operator*=(U const & s_);
+ template <typename U>
+ GLM_FUNC_DECL tvec1<T> & operator*=(tvec1<U> const & v);
+ template <typename U>
+- GLM_FUNC_DECL tvec1<T> & operator/=(U const & s);
++ GLM_FUNC_DECL tvec1<T> & operator/=(U const & s_);
+ template <typename U>
+ GLM_FUNC_DECL tvec1<T> & operator/=(tvec1<U> const & v);
+ GLM_FUNC_DECL tvec1<T> & operator++();
+@@ -143,27 +143,27 @@
+ // Unary bit operators
+
+ template <typename U>
+- GLM_FUNC_DECL tvec1<T> & operator%=(U const & s);
++ GLM_FUNC_DECL tvec1<T> & operator%=(U const & s_);
+ template <typename U>
+ GLM_FUNC_DECL tvec1<T> & operator%=(tvec1<U> const & v);
+ template <typename U>
+- GLM_FUNC_DECL tvec1<T> & operator&=(U const & s);
++ GLM_FUNC_DECL tvec1<T> & operator&=(U const & s_);
+ template <typename U>
+ GLM_FUNC_DECL tvec1<T> & operator&=(tvec1<U> const & v);
+ template <typename U>
+- GLM_FUNC_DECL tvec1<T> & operator|=(U const & s);
++ GLM_FUNC_DECL tvec1<T> & operator|=(U const & s_);
+ template <typename U>
+ GLM_FUNC_DECL tvec1<T> & operator|=(tvec1<U> const & v);
+ template <typename U>
+- GLM_FUNC_DECL tvec1<T> & operator^=(U const & s);
++ GLM_FUNC_DECL tvec1<T> & operator^=(U const & s_);
+ template <typename U>
+ GLM_FUNC_DECL tvec1<T> & operator^=(tvec1<U> const & v);
+ template <typename U>
+- GLM_FUNC_DECL tvec1<T> & operator<<=(U const & s);
++ GLM_FUNC_DECL tvec1<T> & operator<<=(U const & s_);
+ template <typename U>
+ GLM_FUNC_DECL tvec1<T> & operator<<=(tvec1<U> const & v);
+ template <typename U>
+- GLM_FUNC_DECL tvec1<T> & operator>>=(U const & s);
++ GLM_FUNC_DECL tvec1<T> & operator>>=(U const & s_);
+ template <typename U>
+ GLM_FUNC_DECL tvec1<T> & operator>>=(tvec1<U> const & v);
+
+diff -ur glm.org/glm/core/type_vec1.inl glm/glm/core/type_vec1.inl
+--- glm.org/glm/core/type_vec1.inl 2013-12-08 17:04:59.707365220 +0100
++++ glm/glm/core/type_vec1.inl 2013-12-08 17:07:20.081840460 +0100
+@@ -87,9 +87,9 @@
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec1<T>::tvec1
+ (
+- value_type const & s
++ value_type const & s_
+ ) :
+- x(s)
++ x(s_)
+ {}
+
+ //////////////////////////////////////
+@@ -98,9 +98,9 @@
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec1<T>::tvec1
+ (
+- tref1<T> const & r
++ tref1<T> const & r_
+ ) :
+- x(r.x)
++ x(r_.x)
+ {}
+
+ //////////////////////////////////////
+@@ -110,9 +110,9 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec1<T>::tvec1
+ (
+- U const & s
++ U const & s_
+ ) :
+- x(value_type(s))
++ x(value_type(s_))
+ {}
+
+ //////////////////////////////////////
+@@ -173,10 +173,10 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator+=
+ (
+- U const & s
++ U const & s_
+ )
+ {
+- this->x += T(s);
++ this->x += T(s_);
+ return *this;
+ }
+
+@@ -195,10 +195,10 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator-=
+ (
+- U const & s
++ U const & s_
+ )
+ {
+- this->x -= T(s);
++ this->x -= T(s_);
+ return *this;
+ }
+
+@@ -217,10 +217,10 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator*=
+ (
+- U const & s
++ U const & s_
+ )
+ {
+- this->x *= T(s);
++ this->x *= T(s_);
+ return *this;
+ }
+
+@@ -239,10 +239,10 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator/=
+ (
+- U const & s
++ U const & s_
+ )
+ {
+- this->x /= T(s);
++ this->x /= T(s_);
+ return *this;
+ }
+
+@@ -301,10 +301,10 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator%=
+ (
+- U const & s
++ U const & s_
+ )
+ {
+- this->x %= T(s);
++ this->x %= T(s_);
+ return *this;
+ }
+
+@@ -323,10 +323,10 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator&=
+ (
+- U const & s
++ U const & s_
+ )
+ {
+- this->x &= T(s);
++ this->x &= T(s_);
+ return *this;
+ }
+
+@@ -345,10 +345,10 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator|=
+ (
+- U const & s
++ U const & s_
+ )
+ {
+- this->x |= T(s);
++ this->x |= T(s_);
+ return *this;
+ }
+
+@@ -367,10 +367,10 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator^=
+ (
+- U const & s
++ U const & s_
+ )
+ {
+- this->x ^= T(s);
++ this->x ^= T(s_);
+ return *this;
+ }
+
+@@ -389,10 +389,10 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator<<=
+ (
+- U const & s
++ U const & s_
+ )
+ {
+- this->x <<= T(s);
++ this->x <<= T(s_);
+ return *this;
+ }
+
+@@ -411,10 +411,10 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator>>=
+ (
+- U const & s
++ U const & s_
+ )
+ {
+- this->x >>= T(s);
++ this->x >>= T(s_);
+ return *this;
+ }
+
+@@ -434,21 +434,21 @@
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER T
+- tvec1<T>::swizzle(comp x) const
++ tvec1<T>::swizzle(comp x_) const
+ {
+- return (*this)[x];
++ return (*this)[x_];
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec2<T>
+ tvec1<T>::swizzle
+ (
+- comp x,
++ comp x_,
+ comp y
+ ) const
+ {
+ return tvec2<T>(
+- (*this)[x],
++ (*this)[x_],
+ (*this)[y]);
+ }
+
+@@ -456,13 +456,13 @@
+ GLM_FUNC_QUALIFIER tvec3<T>
+ tvec1<T>::swizzle
+ (
+- comp x,
++ comp x_,
+ comp y,
+ comp z
+ ) const
+ {
+ return tvec3<T>(
+- (*this)[x],
++ (*this)[x_],
+ (*this)[y],
+ (*this)[z]);
+ }
+@@ -471,14 +471,14 @@
+ GLM_FUNC_QUALIFIER tvec4<T>
+ tvec1<T>::swizzle
+ (
+- comp x,
++ comp x_,
+ comp y,
+ comp z,
+ comp w
+ ) const
+ {
+ return tvec4<T>(
+- (*this)[x],
++ (*this)[x_],
+ (*this)[y],
+ (*this)[z],
+ (*this)[w]);
+@@ -488,11 +488,11 @@
+ GLM_FUNC_QUALIFIER tref1<T>
+ tvec1<T>::swizzle
+ (
+- comp x
++ comp x_
+ )
+ {
+ return tref1<T>(
+- (*this)[x]);
++ (*this)[x_]);
+ }
+
+ //////////////////////////////////////
+@@ -502,22 +502,22 @@
+ GLM_FUNC_QUALIFIER tvec1<T> operator+
+ (
+ tvec1<T> const & v,
+- typename tvec1<T>::value_type const & s
++ typename tvec1<T>::value_type const & s_
+ )
+ {
+ return tvec1<T>(
+- v.x + s);
++ v.x + s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec1<T> operator+
+ (
+- typename tvec1<T>::value_type const & s,
++ typename tvec1<T>::value_type const & s_,
+ tvec1<T> const & v
+ )
+ {
+ return tvec1<T>(
+- s + v.x);
++ s_ + v.x);
+ }
+
+ template <typename T>
+@@ -536,22 +536,22 @@
+ GLM_FUNC_QUALIFIER tvec1<T> operator-
+ (
+ tvec1<T> const & v,
+- typename tvec1<T>::value_type const & s
++ typename tvec1<T>::value_type const & s_
+ )
+ {
+ return tvec1<T>(
+- v.x - s);
++ v.x - s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec1<T> operator-
+ (
+- typename tvec1<T>::value_type const & s,
++ typename tvec1<T>::value_type const & s_,
+ tvec1<T> const & v
+ )
+ {
+ return tvec1<T>(
+- s - v.x);
++ s_ - v.x);
+ }
+
+ template <typename T>
+@@ -570,22 +570,22 @@
+ GLM_FUNC_QUALIFIER tvec1<T> operator*
+ (
+ tvec1<T> const & v,
+- typename tvec1<T>::value_type const & s
++ typename tvec1<T>::value_type const & s_
+ )
+ {
+ return tvec1<T>(
+- v.x * s);
++ v.x * s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec1<T> operator*
+ (
+- typename tvec1<T>::value_type const & s,
++ typename tvec1<T>::value_type const & s_,
+ tvec1<T> const & v
+ )
+ {
+ return tvec1<T>(
+- s * v.x);
++ s_ * v.x);
+ }
+
+ template <typename T>
+@@ -604,22 +604,22 @@
+ GLM_FUNC_QUALIFIER tvec1<T> operator/
+ (
+ tvec1<T> const & v,
+- typename tvec1<T>::value_type const & s
++ typename tvec1<T>::value_type const & s_
+ )
+ {
+ return tvec1<T>(
+- v.x / s);
++ v.x / s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec1<T> operator/
+ (
+- typename tvec1<T>::value_type const & s,
++ typename tvec1<T>::value_type const & s_,
+ tvec1<T> const & v
+ )
+ {
+ return tvec1<T>(
+- s / v.x);
++ s_ / v.x);
+ }
+
+ template <typename T>
+@@ -673,22 +673,22 @@
+ GLM_FUNC_QUALIFIER tvec1<T> operator%
+ (
+ tvec1<T> const & v,
+- typename tvec1<T>::value_type const & s
++ typename tvec1<T>::value_type const & s_
+ )
+ {
+ return tvec1<T>(
+- v.x % s);
++ v.x % s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec1<T> operator%
+ (
+- typename tvec1<T>::value_type const & s,
++ typename tvec1<T>::value_type const & s_,
+ tvec1<T> const & v
+ )
+ {
+ return tvec1<T>(
+- s % v.x);
++ s_ % v.x);
+ }
+
+ template <typename T>
+@@ -706,22 +706,22 @@
+ GLM_FUNC_QUALIFIER tvec1<T> operator&
+ (
+ tvec1<T> const & v,
+- typename tvec1<T>::value_type const & s
++ typename tvec1<T>::value_type const & s_
+ )
+ {
+ return tvec1<T>(
+- v.x & s);
++ v.x & s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec1<T> operator&
+ (
+- typename tvec1<T>::value_type const & s,
++ typename tvec1<T>::value_type const & s_,
+ tvec1<T> const & v
+ )
+ {
+ return tvec1<T>(
+- s & v.x);
++ s_ & v.x);
+ }
+
+ template <typename T>
+@@ -739,22 +739,22 @@
+ GLM_FUNC_QUALIFIER tvec1<T> operator|
+ (
+ tvec1<T> const & v,
+- typename tvec1<T>::value_type const & s
++ typename tvec1<T>::value_type const & s_
+ )
+ {
+ return tvec1<T>(
+- v.x | s);
++ v.x | s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec1<T> operator|
+ (
+- typename tvec1<T>::value_type const & s,
++ typename tvec1<T>::value_type const & s_,
+ tvec1<T> const & v
+ )
+ {
+ return tvec1<T>(
+- s | v.x);
++ s_ | v.x);
+ }
+
+ template <typename T>
+@@ -772,22 +772,22 @@
+ GLM_FUNC_QUALIFIER tvec1<T> operator^
+ (
+ tvec1<T> const & v,
+- typename tvec1<T>::value_type const & s
++ typename tvec1<T>::value_type const & s_
+ )
+ {
+ return tvec1<T>(
+- v.x ^ s);
++ v.x ^ s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec1<T> operator^
+ (
+- typename tvec1<T>::value_type const & s,
++ typename tvec1<T>::value_type const & s_,
+ tvec1<T> const & v
+ )
+ {
+ return tvec1<T>(
+- s ^ v.x);
++ s_ ^ v.x);
+ }
+
+ template <typename T>
+@@ -805,22 +805,22 @@
+ GLM_FUNC_QUALIFIER tvec1<T> operator<<
+ (
+ tvec1<T> const & v,
+- typename tvec1<T>::value_type const & s
++ typename tvec1<T>::value_type const & s_
+ )
+ {
+ return tvec1<T>(
+- v.x << s);
++ v.x << s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec1<T> operator<<
+ (
+- typename tvec1<T>::value_type const & s,
++ typename tvec1<T>::value_type const & s_,
+ tvec1<T> const & v
+ )
+ {
+ return tvec1<T>(
+- s << v.x);
++ s_ << v.x);
+ }
+
+ template <typename T>
+@@ -838,22 +838,22 @@
+ GLM_FUNC_QUALIFIER tvec1<T> operator>>
+ (
+ tvec1<T> const & v,
+- typename tvec1<T>::value_type const & s
++ typename tvec1<T>::value_type const & s_
+ )
+ {
+ return tvec1<T>(
+- v.x >> s);
++ v.x >> s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec1<T> operator>>
+ (
+- typename tvec1<T>::value_type const & s,
++ typename tvec1<T>::value_type const & s_,
+ tvec1<T> const & v
+ )
+ {
+ return tvec1<T>(
+- s >> v.x);
++ s_ >> v.x);
+ }
+
+ template <typename T>
+@@ -883,9 +883,9 @@
+ template <typename T>
+ GLM_FUNC_QUALIFIER tref1<T>::tref1
+ (
+- T & x
++ T & x_
+ ) :
+- x(x)
++ x(x_)
+ {}
+
+ template <typename T>
+diff -ur glm.org/glm/core/type_vec2.inl glm/glm/core/type_vec2.inl
+--- glm.org/glm/core/type_vec2.inl 2013-12-08 17:04:59.705365270 +0100
++++ glm/glm/core/type_vec2.inl 2013-12-08 17:07:20.078840535 +0100
+@@ -91,10 +91,10 @@
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec2<T>::tvec2
+ (
+- value_type const & s
++ value_type const & s_
+ ) :
+- x(s),
+- y(s)
++ x(s_),
++ y(s_)
+ {}
+
+ template <typename T>
+@@ -113,10 +113,10 @@
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec2<T>::tvec2
+ (
+- tref2<T> const & r
++ tref2<T> const & r_
+ ) :
+- x(r.x),
+- y(r.y)
++ x(r_.x),
++ y(r_.y)
+ {}
+
+ //////////////////////////////////////
+@@ -126,10 +126,10 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec2<T>::tvec2
+ (
+- U const & x
++ U const & x_
+ ) :
+- x(value_type(x)),
+- y(value_type(x))
++ x(value_type(x_)),
++ y(value_type(x_))
+ {}
+
+ template <typename T>
+@@ -204,10 +204,10 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator+=(U s)
++ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator+=(U s_)
+ {
+- this->x += T(s);
+- this->y += T(s);
++ this->x += T(s_);
++ this->y += T(s_);
+ return *this;
+ }
+
+@@ -225,10 +225,10 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator-=(U s)
++ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator-=(U s_)
+ {
+- this->x -= T(s);
+- this->y -= T(s);
++ this->x -= T(s_);
++ this->y -= T(s_);
+ return *this;
+ }
+
+@@ -246,10 +246,10 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator*=(U s)
++ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator*=(U s_)
+ {
+- this->x *= T(s);
+- this->y *= T(s);
++ this->x *= T(s_);
++ this->y *= T(s_);
+ return *this;
+ }
+
+@@ -267,10 +267,10 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator/=(U s)
++ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator/=(U s_)
+ {
+- this->x /= T(s);
+- this->y /= T(s);
++ this->x /= T(s_);
++ this->y /= T(s_);
+ return *this;
+ }
+
+@@ -330,10 +330,10 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator%=(U s)
++ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator%=(U s_)
+ {
+- this->x %= T(s);
+- this->y %= T(s);
++ this->x %= T(s_);
++ this->y %= T(s_);
+ return *this;
+ }
+
+@@ -351,10 +351,10 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator&=(U s)
++ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator&=(U s_)
+ {
+- this->x &= T(s);
+- this->y &= T(s);
++ this->x &= T(s_);
++ this->y &= T(s_);
+ return *this;
+ }
+
+@@ -372,10 +372,10 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator|=(U s)
++ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator|=(U s_)
+ {
+- this->x |= T(s);
+- this->y |= T(s);
++ this->x |= T(s_);
++ this->y |= T(s_);
+ return *this;
+ }
+
+@@ -393,10 +393,10 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator^=(U s)
++ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator^=(U s_)
+ {
+- this->x ^= T(s);
+- this->y ^= T(s);
++ this->x ^= T(s_);
++ this->y ^= T(s_);
+ return *this;
+ }
+
+@@ -414,10 +414,10 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator<<=(U s)
++ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator<<=(U s_)
+ {
+- this->x <<= T(s);
+- this->y <<= T(s);
++ this->x <<= T(s_);
++ this->y <<= T(s_);
+ return *this;
+ }
+
+@@ -435,10 +435,10 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator>>=(U s)
++ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator>>=(U s_)
+ {
+- this->x >>= T(s);
+- this->y >>= T(s);
++ this->x >>= T(s_);
++ this->y >>= T(s_);
+ return *this;
+ }
+
+@@ -460,50 +460,50 @@
+ template <typename T>
+ GLM_FUNC_QUALIFIER typename tvec2<T>::value_type tvec2<T>::swizzle
+ (
+- comp x
++ comp x_
+ ) const
+ {
+- return (*this)[x];
++ return (*this)[x_];
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec2<T> tvec2<T>::swizzle
+ (
+- comp x,
+- comp y
++ comp x_,
++ comp y_
+ ) const
+ {
+ return tvec2<T>(
+- (*this)[x],
+- (*this)[y]);
++ (*this)[x_],
++ (*this)[y_]);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T> tvec2<T>::swizzle
+ (
+- comp x,
+- comp y,
++ comp x_,
++ comp y_,
+ comp z
+ ) const
+ {
+ return tvec3<T>(
+- (*this)[x],
+- (*this)[y],
++ (*this)[x_],
++ (*this)[y_],
+ (*this)[z]);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T> tvec2<T>::swizzle
+ (
+- comp x,
+- comp y,
++ comp x_,
++ comp y_,
+ comp z,
+ comp w
+ ) const
+ {
+ return tvec4<T>(
+- (*this)[x],
+- (*this)[y],
++ (*this)[x_],
++ (*this)[y_],
+ (*this)[z],
+ (*this)[w]);
+ }
+@@ -511,13 +511,13 @@
+ template <typename T>
+ GLM_FUNC_QUALIFIER tref2<T> tvec2<T>::swizzle
+ (
+- comp x,
+- comp y
++ comp x_,
++ comp y_
+ )
+ {
+ return tref2<T>(
+- (*this)[x],
+- (*this)[y]);
++ (*this)[x_],
++ (*this)[y_]);
+ }
+
+ //////////////////////////////////////
+@@ -527,12 +527,12 @@
+ GLM_FUNC_QUALIFIER tvec2<T> operator+
+ (
+ tvec2<T> const & v,
+- T const & s
++ T const & s_
+ )
+ {
+ return tvec2<T>(
+- v.x + T(s),
+- v.y + T(s));
++ v.x + T(s_),
++ v.y + T(s_));
+ }
+
+ template <typename T>
+@@ -942,11 +942,11 @@
+ template <typename T>
+ tref2<T>::tref2
+ (
+- T & x,
+- T & y
++ T & x_,
++ T & y_
+ ) :
+- x(x),
+- y(y)
++ x(x_),
++ y(y_)
+ {}
+
+ template <typename T>
+diff -ur glm.org/glm/core/type_vec3.hpp glm/glm/core/type_vec3.hpp
+--- glm.org/glm/core/type_vec3.hpp 2013-12-08 17:04:59.707365220 +0100
++++ glm/glm/core/type_vec3.hpp 2013-12-08 17:07:20.081840460 +0100
+@@ -170,15 +170,15 @@
+ }
+
+ template <int E0, int E1>
+- GLM_FUNC_DECL tvec3(glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v, T const & s)
++ GLM_FUNC_DECL tvec3(glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v, T const & s_)
+ {
+- *this = tvec3<T>(v(), s);
++ *this = tvec3<T>(v(), s_);
+ }
+
+ template <int E0, int E1>
+- GLM_FUNC_DECL tvec3(T const & s, glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v)
++ GLM_FUNC_DECL tvec3(T const & s_, glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v)
+ {
+- *this = tvec3<T>(s, v());
++ *this = tvec3<T>(s_, v());
+ }
+
+ //////////////////////////////////////
+diff -ur glm.org/glm/core/type_vec3.inl glm/glm/core/type_vec3.inl
+--- glm.org/glm/core/type_vec3.inl 2013-12-08 17:04:59.706365245 +0100
++++ glm/glm/core/type_vec3.inl 2013-12-08 17:07:20.079840510 +0100
+@@ -93,11 +93,11 @@
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T>::tvec3
+ (
+- value_type const & s
++ value_type const & s_
+ ) :
+- x(s),
+- y(s),
+- z(s)
++ x(s_),
++ y(s_),
++ z(s_)
+ {}
+
+ template <typename T>
+@@ -118,11 +118,11 @@
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T>::tvec3
+ (
+- tref3<T> const & r
++ tref3<T> const & r_
+ ) :
+- x(r.x),
+- y(r.y),
+- z(r.z)
++ x(r_.x),
++ y(r_.y),
++ z(r_.z)
+ {}
+
+ template <typename T>
+@@ -130,21 +130,21 @@
+ GLM_FUNC_QUALIFIER tvec3<T>::tvec3
+ (
+ tref2<A> const & v,
+- B const & s
++ B const & s_
+ ) :
+ x(value_type(v.x)),
+ y(value_type(v.y)),
+- z(value_type(s))
++ z(value_type(s_))
+ {}
+
+ template <typename T>
+ template <typename A, typename B>
+ GLM_FUNC_QUALIFIER tvec3<T>::tvec3
+ (
+- A const & s,
++ A const & s_,
+ tref2<B> const & v
+ ) :
+- x(value_type(s)),
++ x(value_type(s_)),
+ y(value_type(v.x)),
+ z(value_type(v.y))
+ {}
+@@ -156,24 +156,24 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec3<T>::tvec3
+ (
+- U const & s
++ U const & s_
+ ) :
+- x(value_type(s)),
+- y(value_type(s)),
+- z(value_type(s))
++ x(value_type(s_)),
++ y(value_type(s_)),
++ z(value_type(s_))
+ {}
+
+ template <typename T>
+ template <typename A, typename B, typename C>
+ GLM_FUNC_QUALIFIER tvec3<T>::tvec3
+ (
+- A const & x,
+- B const & y,
+- C const & z
++ A const & x_,
++ B const & y_,
++ C const & z_
+ ) :
+- x(value_type(x)),
+- y(value_type(y)),
+- z(value_type(z))
++ x(value_type(x_)),
++ y(value_type(y_)),
++ z(value_type(z_))
+ {}
+
+ //////////////////////////////////////
+@@ -184,21 +184,21 @@
+ GLM_FUNC_QUALIFIER tvec3<T>::tvec3
+ (
+ tvec2<A> const & v,
+- B const & s
++ B const & s_
+ ) :
+ x(value_type(v.x)),
+ y(value_type(v.y)),
+- z(value_type(s))
++ z(value_type(s_))
+ {}
+
+ template <typename T>
+ template <typename A, typename B>
+ GLM_FUNC_QUALIFIER tvec3<T>::tvec3
+ (
+- A const & s,
++ A const & s_,
+ tvec2<B> const & v
+ ) :
+- x(value_type(s)),
++ x(value_type(s_)),
+ y(value_type(v.x)),
+ z(value_type(v.y))
+ {}
+@@ -255,11 +255,11 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator+=(U s)
++ GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator+=(U s_)
+ {
+- this->x += T(s);
+- this->y += T(s);
+- this->z += T(s);
++ this->x += T(s_);
++ this->y += T(s_);
++ this->z += T(s_);
+ return *this;
+ }
+
+@@ -278,11 +278,11 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator-=(U s)
++ GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator-=(U s_)
+ {
+- this->x -= T(s);
+- this->y -= T(s);
+- this->z -= T(s);
++ this->x -= T(s_);
++ this->y -= T(s_);
++ this->z -= T(s_);
+ return *this;
+ }
+
+@@ -301,11 +301,11 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator*=(U s)
++ GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator*=(U s_)
+ {
+- this->x *= T(s);
+- this->y *= T(s);
+- this->z *= T(s);
++ this->x *= T(s_);
++ this->y *= T(s_);
++ this->z *= T(s_);
+ return *this;
+ }
+
+@@ -324,11 +324,11 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator/=(U s)
++ GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator/=(U s_)
+ {
+- this->x /= T(s);
+- this->y /= T(s);
+- this->z /= T(s);
++ this->x /= T(s_);
++ this->y /= T(s_);
++ this->z /= T(s_);
+ return *this;
+ }
+
+@@ -391,11 +391,11 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator%=(U s)
++ GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator%=(U s_)
+ {
+- this->x %= s;
+- this->y %= s;
+- this->z %= s;
++ this->x %= s_;
++ this->y %= s_;
++ this->z %= s_;
+ return *this;
+ }
+
+@@ -414,11 +414,11 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator&=(U s)
++ GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator&=(U s_)
+ {
+- this->x &= s;
+- this->y &= s;
+- this->z &= s;
++ this->x &= s_;
++ this->y &= s_;
++ this->z &= s_;
+ return *this;
+ }
+
+@@ -437,11 +437,11 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator|=(U s)
++ GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator|=(U s_)
+ {
+- this->x |= s;
+- this->y |= s;
+- this->z |= s;
++ this->x |= s_;
++ this->y |= s_;
++ this->z |= s_;
+ return *this;
+ }
+
+@@ -460,11 +460,11 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator^=(U s)
++ GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator^=(U s_)
+ {
+- this->x ^= s;
+- this->y ^= s;
+- this->z ^= s;
++ this->x ^= s_;
++ this->y ^= s_;
++ this->z ^= s_;
+ return *this;
+ }
+
+@@ -483,11 +483,11 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator<<=(U s)
++ GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator<<=(U s_)
+ {
+- this->x <<= s;
+- this->y <<= s;
+- this->z <<= s;
++ this->x <<= s_;
++ this->y <<= s_;
++ this->z <<= s_;
+ return *this;
+ }
+
+@@ -506,11 +506,11 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator>>=(U s)
++ GLM_FUNC_QUALIFIER tvec3<T> & tvec3<T>::operator>>=(U s_)
+ {
+- this->x >>= T(s);
+- this->y >>= T(s);
+- this->z >>= T(s);
++ this->x >>= T(s_);
++ this->y >>= T(s_);
++ this->z >>= T(s_);
+ return *this;
+ }
+
+@@ -534,78 +534,78 @@
+ GLM_FUNC_QUALIFIER typename tvec3<T>::value_type
+ tvec3<T>::swizzle
+ (
+- comp x
++ comp x_
+ ) const
+ {
+- return (*this)[x];
++ return (*this)[x_];
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec2<T> tvec3<T>::swizzle
+ (
+- comp x,
+- comp y
++ comp x_,
++ comp y_
+ ) const
+ {
+ return tvec2<T>(
+- (*this)[x],
+- (*this)[y]);
++ (*this)[x_],
++ (*this)[y_]);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T> tvec3<T>::swizzle
+ (
+- comp x,
+- comp y,
+- comp z
++ comp x_,
++ comp y_,
++ comp z_
+ ) const
+ {
+ return tvec3<T>(
+- (*this)[x],
+- (*this)[y],
+- (*this)[z]);
++ (*this)[x_],
++ (*this)[y_],
++ (*this)[z_]);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T> tvec3<T>::swizzle
+ (
+- comp x,
+- comp y,
+- comp z,
++ comp x_,
++ comp y_,
++ comp z_,
+ comp w
+ ) const
+ {
+ return tvec4<T>(
+- (*this)[x],
+- (*this)[y],
+- (*this)[z],
++ (*this)[x_],
++ (*this)[y_],
++ (*this)[z_],
+ (*this)[w]);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tref2<T> tvec3<T>::swizzle
+ (
+- comp x,
+- comp y
++ comp x_,
++ comp y_
+ )
+ {
+ return tref2<T>(
+- (*this)[x],
+- (*this)[y]);
++ (*this)[x_],
++ (*this)[y_]);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tref3<T> tvec3<T>::swizzle
+ (
+- comp x,
+- comp y,
+- comp z
++ comp x_,
++ comp y_,
++ comp z_
+ )
+ {
+ return tref3<T>(
+- (*this)[x],
+- (*this)[y],
+- (*this)[z]);
++ (*this)[x_],
++ (*this)[y_],
++ (*this)[z_]);
+ }
+
+ //////////////////////////////////////
+@@ -615,26 +615,26 @@
+ GLM_FUNC_QUALIFIER tvec3<T> operator+
+ (
+ tvec3<T> const & v,
+- T const & s
++ T const & s_
+ )
+ {
+ return tvec3<T>(
+- v.x + T(s),
+- v.y + T(s),
+- v.z + T(s));
++ v.x + T(s_),
++ v.y + T(s_),
++ v.z + T(s_));
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T> operator+
+ (
+- T const & s,
++ T const & s_,
+ tvec3<T> const & v
+ )
+ {
+ return tvec3<T>(
+- T(s) + v.x,
+- T(s) + v.y,
+- T(s) + v.z);
++ T(s_) + v.x,
++ T(s_) + v.y,
++ T(s_) + v.z);
+ }
+
+ template <typename T>
+@@ -655,26 +655,26 @@
+ GLM_FUNC_QUALIFIER tvec3<T> operator-
+ (
+ tvec3<T> const & v,
+- T const & s
++ T const & s_
+ )
+ {
+ return tvec3<T>(
+- v.x - T(s),
+- v.y - T(s),
+- v.z - T(s));
++ v.x - T(s_),
++ v.y - T(s_),
++ v.z - T(s_));
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T> operator-
+ (
+- T const & s,
++ T const & s_,
+ tvec3<T> const & v
+ )
+ {
+ return tvec3<T>(
+- T(s) - v.x,
+- T(s) - v.y,
+- T(s) - v.z);
++ T(s_) - v.x,
++ T(s_) - v.y,
++ T(s_) - v.z);
+ }
+
+ template <typename T>
+@@ -695,26 +695,26 @@
+ GLM_FUNC_QUALIFIER tvec3<T> operator*
+ (
+ tvec3<T> const & v,
+- T const & s
++ T const & s_
+ )
+ {
+ return tvec3<T>(
+- v.x * T(s),
+- v.y * T(s),
+- v.z * T(s));
++ v.x * T(s_),
++ v.y * T(s_),
++ v.z * T(s_));
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T> operator*
+ (
+- T const & s,
++ T const & s_,
+ tvec3<T> const & v
+ )
+ {
+ return tvec3<T>(
+- T(s) * v.x,
+- T(s) * v.y,
+- T(s) * v.z);
++ T(s_) * v.x,
++ T(s_) * v.y,
++ T(s_) * v.z);
+ }
+
+ template <typename T>
+@@ -735,26 +735,26 @@
+ GLM_FUNC_QUALIFIER tvec3<T> operator/
+ (
+ tvec3<T> const & v,
+- T const & s
++ T const & s_
+ )
+ {
+ return tvec3<T>(
+- v.x / T(s),
+- v.y / T(s),
+- v.z / T(s));
++ v.x / T(s_),
++ v.y / T(s_),
++ v.z / T(s_));
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T> operator/
+ (
+- T const & s,
++ T const & s_,
+ tvec3<T> const & v
+ )
+ {
+ return tvec3<T>(
+- T(s) / v.x,
+- T(s) / v.y,
+- T(s) / v.z);
++ T(s_) / v.x,
++ T(s_) / v.y,
++ T(s_) / v.z);
+ }
+
+ template <typename T>
+@@ -816,26 +816,26 @@
+ GLM_FUNC_QUALIFIER tvec3<T> operator%
+ (
+ tvec3<T> const & v,
+- T const & s
++ T const & s_
+ )
+ {
+ return tvec3<T>(
+- v.x % T(s),
+- v.y % T(s),
+- v.z % T(s));
++ v.x % T(s_),
++ v.y % T(s_),
++ v.z % T(s_));
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T> operator%
+ (
+- T const & s,
++ T const & s_,
+ tvec3<T> const & v
+ )
+ {
+ return tvec3<T>(
+- T(s) % v.x,
+- T(s) % v.y,
+- T(s) % v.z);
++ T(s_) % v.x,
++ T(s_) % v.y,
++ T(s_) % v.z);
+ }
+
+ template <typename T>
+@@ -855,26 +855,26 @@
+ GLM_FUNC_QUALIFIER tvec3<T> operator&
+ (
+ tvec3<T> const & v,
+- T const & s
++ T const & s_
+ )
+ {
+ return tvec3<T>(
+- v.x & T(s),
+- v.y & T(s),
+- v.z & T(s));
++ v.x & T(s_),
++ v.y & T(s_),
++ v.z & T(s_));
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T> operator&
+ (
+- T const & s,
++ T const & s_,
+ tvec3<T> const & v
+ )
+ {
+ return tvec3<T>(
+- T(s) & v.x,
+- T(s) & v.y,
+- T(s) & v.z);
++ T(s_) & v.x,
++ T(s_) & v.y,
++ T(s_) & v.z);
+ }
+
+ template <typename T>
+@@ -894,26 +894,26 @@
+ GLM_FUNC_QUALIFIER tvec3<T> operator|
+ (
+ tvec3<T> const & v,
+- T const & s
++ T const & s_
+ )
+ {
+ return tvec3<T>(
+- v.x | T(s),
+- v.y | T(s),
+- v.z | T(s));
++ v.x | T(s_),
++ v.y | T(s_),
++ v.z | T(s_));
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T> operator|
+ (
+- T const & s,
++ T const & s_,
+ tvec3<T> const & v
+ )
+ {
+ return tvec3<T>(
+- T(s) | v.x,
+- T(s) | v.y,
+- T(s) | v.z);
++ T(s_) | v.x,
++ T(s_) | v.y,
++ T(s_) | v.z);
+ }
+
+ template <typename T>
+@@ -933,26 +933,26 @@
+ GLM_FUNC_QUALIFIER tvec3<T> operator^
+ (
+ tvec3<T> const & v,
+- T const & s
++ T const & s_
+ )
+ {
+ return tvec3<T>(
+- v.x ^ T(s),
+- v.y ^ T(s),
+- v.z ^ T(s));
++ v.x ^ T(s_),
++ v.y ^ T(s_),
++ v.z ^ T(s_));
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T> operator^
+ (
+- T const & s,
++ T const & s_,
+ tvec3<T> const & v
+ )
+ {
+ return tvec3<T>(
+- T(s) ^ v.x,
+- T(s) ^ v.y,
+- T(s) ^ v.z);
++ T(s_) ^ v.x,
++ T(s_) ^ v.y,
++ T(s_) ^ v.z);
+ }
+
+ template <typename T>
+@@ -972,26 +972,26 @@
+ GLM_FUNC_QUALIFIER tvec3<T> operator<<
+ (
+ tvec3<T> const & v,
+- T const & s
++ T const & s_
+ )
+ {
+ return tvec3<T>(
+- v.x << T(s),
+- v.y << T(s),
+- v.z << T(s));
++ v.x << T(s_),
++ v.y << T(s_),
++ v.z << T(s_));
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T> operator<<
+ (
+- T const & s,
++ T const & s_,
+ tvec3<T> const & v
+ )
+ {
+ return tvec3<T>(
+- T(s) << v.x,
+- T(s) << v.y,
+- T(s) << v.z);
++ T(s_) << v.x,
++ T(s_) << v.y,
++ T(s_) << v.z);
+ }
+
+ template <typename T>
+@@ -1011,26 +1011,26 @@
+ GLM_FUNC_QUALIFIER tvec3<T> operator>>
+ (
+ tvec3<T> const & v,
+- T const & s
++ T const & s_
+ )
+ {
+ return tvec3<T>(
+- v.x >> T(s),
+- v.y >> T(s),
+- v.z >> T(s));
++ v.x >> T(s_),
++ v.y >> T(s_),
++ v.z >> T(s_));
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T> operator>>
+ (
+- T const & s,
++ T const & s_,
+ tvec3<T> const & v
+ )
+ {
+ return tvec3<T>(
+- s >> T(v.x),
+- s >> T(v.y),
+- s >> T(v.z));
++ s_ >> T(v.x),
++ s_ >> T(v.y),
++ s_ >> T(v.z));
+ }
+
+ template <typename T>
+@@ -1062,10 +1062,10 @@
+ // tref definition
+
+ template <typename T>
+- GLM_FUNC_QUALIFIER tref3<T>::tref3(T & x, T & y, T & z) :
+- x(x),
+- y(y),
+- z(z)
++ GLM_FUNC_QUALIFIER tref3<T>::tref3(T & x_, T & y_, T & z_) :
++ x(x_),
++ y(y_),
++ z(z_)
+ {}
+
+ template <typename T>
+diff -ur glm.org/glm/core/type_vec4.hpp glm/glm/core/type_vec4.hpp
+--- glm.org/glm/core/type_vec4.hpp 2013-12-08 17:04:59.705365270 +0100
++++ glm/glm/core/type_vec4.hpp 2013-12-08 17:07:20.078840535 +0100
+@@ -177,33 +177,33 @@
+ }
+
+ template <int E0, int E1>
+- GLM_FUNC_DECL tvec4(T const & x, T const & y, glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v)
++ GLM_FUNC_DECL tvec4(T const & x_, T const & y_, glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v)
+ {
+- *this = tvec4<T>(x, y, v());
++ *this = tvec4<T>(x_, y_, v());
+ }
+
+ template <int E0, int E1>
+- GLM_FUNC_DECL tvec4(T const & x, glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v, T const & w)
++ GLM_FUNC_DECL tvec4(T const & x_, glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v, T const & w_)
+ {
+- *this = tvec4<T>(x, v(), w);
++ *this = tvec4<T>(x_, v(), w);
+ }
+
+ template <int E0, int E1>
+- GLM_FUNC_DECL tvec4(glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v, T const & z, T const & w)
++ GLM_FUNC_DECL tvec4(glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v, T const & z_, T const & w_)
+ {
+- *this = tvec4<T>(v(), z, w);
++ *this = tvec4<T>(v(), z_, w_);
+ }
+
+ template <int E0, int E1, int E2>
+- GLM_FUNC_DECL tvec4(glm::detail::swizzle<3, T, tvec3<T>, E0, E1, E2, -1> const & v, T const & w)
++ GLM_FUNC_DECL tvec4(glm::detail::swizzle<3, T, tvec3<T>, E0, E1, E2, -1> const & v, T const & w_)
+ {
+- *this = tvec4<T>(v(), w);
++ *this = tvec4<T>(v(), w_);
+ }
+
+ template <int E0, int E1, int E2>
+- GLM_FUNC_DECL tvec4(T const & x, glm::detail::swizzle<3, T, tvec3<T>, E0, E1, E2, -1> const & v)
++ GLM_FUNC_DECL tvec4(T const & x_, glm::detail::swizzle<3, T, tvec3<T>, E0, E1, E2, -1> const & v)
+ {
+- *this = tvec4<T>(x, v());
++ *this = tvec4<T>(x_, v());
+ }
+
+ //////////////////////////////////////
+diff -ur glm.org/glm/core/type_vec4.inl glm/glm/core/type_vec4.inl
+--- glm.org/glm/core/type_vec4.inl 2013-12-08 17:04:59.706365245 +0100
++++ glm/glm/core/type_vec4.inl 2013-12-08 17:07:20.079840510 +0100
+@@ -95,12 +95,12 @@
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T>::tvec4
+ (
+- value_type const & s
++ value_type const & s_
+ ) :
+- x(s),
+- y(s),
+- z(s),
+- w(s)
++ x(s_),
++ y(s_),
++ z(s_),
++ w(s_)
+ {}
+
+ template <typename T>
+@@ -123,12 +123,12 @@
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T>::tvec4
+ (
+- tref4<T> const & r
++ tref4<T> const & r_
+ ) :
+- x(r.x),
+- y(r.y),
+- z(r.z),
+- w(r.w)
++ x(r_.x),
++ y(r_.y),
++ z(r_.z),
++ w(r_.w)
+ {}
+
+ template <typename T>
+@@ -178,22 +178,22 @@
+ GLM_FUNC_QUALIFIER tvec4<T>::tvec4
+ (
+ tref3<A> const & v,
+- B const & s
++ B const & s_
+ ) :
+ x(value_type(v.x)),
+ y(value_type(v.y)),
+ z(value_type(v.z)),
+- w(value_type(s))
++ w(value_type(s_))
+ {}
+
+ template <typename T>
+ template <typename A, typename B>
+ GLM_FUNC_QUALIFIER tvec4<T>::tvec4
+ (
+- A const & s,
++ A const & s_,
+ tref3<B> const & v
+ ) :
+- x(value_type(s)),
++ x(value_type(s_)),
+ y(value_type(v.x)),
+ z(value_type(v.y)),
+ w(value_type(v.z))
+@@ -245,27 +245,27 @@
+ template <typename U>
+ GLM_FUNC_QUALIFIER tvec4<T>::tvec4
+ (
+- U const & x
++ U const & x_
+ ) :
+- x(value_type(x)),
+- y(value_type(x)),
+- z(value_type(x)),
+- w(value_type(x))
++ x(value_type(x_)),
++ y(value_type(x_)),
++ z(value_type(x_)),
++ w(value_type(x_))
+ {}
+
+ template <typename T>
+ template <typename A, typename B, typename C, typename D>
+ GLM_FUNC_QUALIFIER tvec4<T>::tvec4
+ (
+- A const & x,
+- B const & y,
+- C const & z,
+- D const & w
+- ) :
+- x(value_type(x)),
+- y(value_type(y)),
+- z(value_type(z)),
+- w(value_type(w))
++ A const & x_,
++ B const & y_,
++ C const & z_,
++ D const & w_
++ ) :
++ x(value_type(x_)),
++ y(value_type(y_)),
++ z(value_type(z_)),
++ w(value_type(w_))
+ {}
+
+ //////////////////////////////////////
+@@ -318,22 +318,22 @@
+ GLM_FUNC_QUALIFIER tvec4<T>::tvec4
+ (
+ tvec3<A> const & v,
+- B const & s
++ B const & s_
+ ) :
+ x(value_type(v.x)),
+ y(value_type(v.y)),
+ z(value_type(v.z)),
+- w(value_type(s))
++ w(value_type(s_))
+ {}
+
+ template <typename T>
+ template <typename A, typename B>
+ GLM_FUNC_QUALIFIER tvec4<T>::tvec4
+ (
+- A const & s,
++ A const & s_,
+ tvec3<B> const & v
+ ) :
+- x(value_type(s)),
++ x(value_type(s_)),
+ y(value_type(v.x)),
+ z(value_type(v.y)),
+ w(value_type(v.z))
+@@ -396,12 +396,12 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator+= (U s)
++ GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator+= (U s_)
+ {
+- this->x += T(s);
+- this->y += T(s);
+- this->z += T(s);
+- this->w += T(s);
++ this->x += T(s_);
++ this->y += T(s_);
++ this->z += T(s_);
++ this->w += T(s_);
+ return *this;
+ }
+
+@@ -421,12 +421,12 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator-= (U s)
++ GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator-= (U s_)
+ {
+- this->x -= T(s);
+- this->y -= T(s);
+- this->z -= T(s);
+- this->w -= T(s);
++ this->x -= T(s_);
++ this->y -= T(s_);
++ this->z -= T(s_);
++ this->w -= T(s_);
+ return *this;
+ }
+
+@@ -446,12 +446,12 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator*= (U s)
++ GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator*= (U s_)
+ {
+- this->x *= T(s);
+- this->y *= T(s);
+- this->z *= T(s);
+- this->w *= T(s);
++ this->x *= T(s_);
++ this->y *= T(s_);
++ this->z *= T(s_);
++ this->w *= T(s_);
+ return *this;
+ }
+
+@@ -471,12 +471,12 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator/= (U s)
++ GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator/= (U s_)
+ {
+- this->x /= T(s);
+- this->y /= T(s);
+- this->z /= T(s);
+- this->w /= T(s);
++ this->x /= T(s_);
++ this->y /= T(s_);
++ this->z /= T(s_);
++ this->w /= T(s_);
+ return *this;
+ }
+
+@@ -519,12 +519,12 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator%= (U s)
++ GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator%= (U s_)
+ {
+- this->x %= T(s);
+- this->y %= T(s);
+- this->z %= T(s);
+- this->w %= T(s);
++ this->x %= T(s_);
++ this->y %= T(s_);
++ this->z %= T(s_);
++ this->w %= T(s_);
+ return *this;
+ }
+
+@@ -544,12 +544,12 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator&= (U s)
++ GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator&= (U s_)
+ {
+- this->x &= T(s);
+- this->y &= T(s);
+- this->z &= T(s);
+- this->w &= T(s);
++ this->x &= T(s_);
++ this->y &= T(s_);
++ this->z &= T(s_);
++ this->w &= T(s_);
+ return *this;
+ }
+
+@@ -569,12 +569,12 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator|= (U s)
++ GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator|= (U s_)
+ {
+- this->x |= T(s);
+- this->y |= T(s);
+- this->z |= T(s);
+- this->w |= T(s);
++ this->x |= T(s_);
++ this->y |= T(s_);
++ this->z |= T(s_);
++ this->w |= T(s_);
+ return *this;
+ }
+
+@@ -594,12 +594,12 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator^= (U s)
++ GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator^= (U s_)
+ {
+- this->x ^= T(s);
+- this->y ^= T(s);
+- this->z ^= T(s);
+- this->w ^= T(s);
++ this->x ^= T(s_);
++ this->y ^= T(s_);
++ this->z ^= T(s_);
++ this->w ^= T(s_);
+ return *this;
+ }
+
+@@ -619,12 +619,12 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator<<= (U s)
++ GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator<<= (U s_)
+ {
+- this->x <<= T(s);
+- this->y <<= T(s);
+- this->z <<= T(s);
+- this->w <<= T(s);
++ this->x <<= T(s_);
++ this->y <<= T(s_);
++ this->z <<= T(s_);
++ this->w <<= T(s_);
+ return *this;
+ }
+
+@@ -644,12 +644,12 @@
+
+ template <typename T>
+ template <typename U>
+- GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator>>= (U s)
++ GLM_FUNC_QUALIFIER tvec4<T> & tvec4<T>::operator>>= (U s_)
+ {
+- this->x >>= T(s);
+- this->y >>= T(s);
+- this->z >>= T(s);
+- this->w >>= T(s);
++ this->x >>= T(s_);
++ this->y >>= T(s_);
++ this->z >>= T(s_);
++ this->w >>= T(s_);
+ return *this;
+ }
+
+@@ -674,94 +674,94 @@
+ GLM_FUNC_QUALIFIER typename tvec4<T>::value_type
+ tvec4<T>::swizzle
+ (
+- comp x
++ comp x_
+ ) const
+ {
+- return (*this)[x];
++ return (*this)[x_];
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec2<T> tvec4<T>::swizzle
+ (
+- comp x,
+- comp y
++ comp x_,
++ comp y_
+ ) const
+ {
+ return tvec2<T>(
+- (*this)[x],
+- (*this)[y]);
++ (*this)[x_],
++ (*this)[y_]);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec3<T> tvec4<T>::swizzle
+ (
+- comp x,
+- comp y,
+- comp z
++ comp x_,
++ comp y_,
++ comp z_
+ ) const
+ {
+ return tvec3<T>(
+- (*this)[x],
+- (*this)[y],
+- (*this)[z]);
++ (*this)[x_],
++ (*this)[y_],
++ (*this)[z_]);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T> tvec4<T>::swizzle
+ (
+- comp x,
+- comp y,
+- comp z,
+- comp w
++ comp x_,
++ comp y_,
++ comp z_,
++ comp w_
+ ) const
+ {
+ return tvec4<T>(
+- (*this)[x],
+- (*this)[y],
+- (*this)[z],
+- (*this)[w]);
++ (*this)[x_],
++ (*this)[y_],
++ (*this)[z_],
++ (*this)[w_]);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tref2<T> tvec4<T>::swizzle
+ (
+- comp x,
+- comp y
++ comp x_,
++ comp y_
+ )
+ {
+ return tref2<T>(
+- (*this)[x],
+- (*this)[y]);
++ (*this)[x_],
++ (*this)[y_]);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tref3<T> tvec4<T>::swizzle
+ (
+- comp x,
+- comp y,
+- comp z
++ comp x_,
++ comp y_,
++ comp z_
+ )
+ {
+ return tref3<T>(
+- (*this)[x],
+- (*this)[y],
+- (*this)[z]);
++ (*this)[x_],
++ (*this)[y_],
++ (*this)[z_]);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tref4<T> tvec4<T>::swizzle
+ (
+- comp x,
+- comp y,
+- comp z,
+- comp w
++ comp x_,
++ comp y_,
++ comp z_,
++ comp w_
+ )
+ {
+ return tref4<T>(
+- (*this)[x],
+- (*this)[y],
+- (*this)[z],
+- (*this)[w]);
++ (*this)[x_],
++ (*this)[y_],
++ (*this)[z_],
++ (*this)[w_]);
+ }
+
+ //////////////////////////////////////
+@@ -771,28 +771,28 @@
+ GLM_FUNC_QUALIFIER tvec4<T> operator+
+ (
+ tvec4<T> const & v,
+- typename tvec4<T>::value_type const & s
++ typename tvec4<T>::value_type const & s_
+ )
+ {
+ return tvec4<T>(
+- v.x + s,
+- v.y + s,
+- v.z + s,
+- v.w + s);
++ v.x + s_,
++ v.y + s_,
++ v.z + s_,
++ v.w + s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T> operator+
+ (
+- typename tvec4<T>::value_type const & s,
++ typename tvec4<T>::value_type const & s_,
+ tvec4<T> const & v
+ )
+ {
+ return tvec4<T>(
+- s + v.x,
+- s + v.y,
+- s + v.z,
+- s + v.w);
++ s_ + v.x,
++ s_ + v.y,
++ s_ + v.z,
++ s_ + v.w);
+ }
+
+ template <typename T>
+@@ -814,28 +814,28 @@
+ GLM_FUNC_QUALIFIER tvec4<T> operator-
+ (
+ tvec4<T> const & v,
+- typename tvec4<T>::value_type const & s
++ typename tvec4<T>::value_type const & s_
+ )
+ {
+ return tvec4<T>(
+- v.x - s,
+- v.y - s,
+- v.z - s,
+- v.w - s);
++ v.x - s_,
++ v.y - s_,
++ v.z - s_,
++ v.w - s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T> operator-
+ (
+- typename tvec4<T>::value_type const & s,
++ typename tvec4<T>::value_type const & s_,
+ tvec4<T> const & v
+ )
+ {
+ return tvec4<T>(
+- s - v.x,
+- s - v.y,
+- s - v.z,
+- s - v.w);
++ s_ - v.x,
++ s_ - v.y,
++ s_ - v.z,
++ s_ - v.w);
+ }
+
+ template <typename T>
+@@ -857,28 +857,28 @@
+ GLM_FUNC_QUALIFIER tvec4<T> operator*
+ (
+ tvec4<T> const & v,
+- typename tvec4<T>::value_type const & s
++ typename tvec4<T>::value_type const & s_
+ )
+ {
+ return tvec4<T>(
+- v.x * s,
+- v.y * s,
+- v.z * s,
+- v.w * s);
++ v.x * s_,
++ v.y * s_,
++ v.z * s_,
++ v.w * s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T> operator*
+ (
+- typename tvec4<T>::value_type const & s,
++ typename tvec4<T>::value_type const & s_,
+ tvec4<T> const & v
+ )
+ {
+ return tvec4<T>(
+- s * v.x,
+- s * v.y,
+- s * v.z,
+- s * v.w);
++ s_ * v.x,
++ s_ * v.y,
++ s_ * v.z,
++ s_ * v.w);
+ }
+
+ template <typename T>
+@@ -900,28 +900,28 @@
+ GLM_FUNC_QUALIFIER tvec4<T> operator/
+ (
+ tvec4<T> const & v,
+- typename tvec4<T>::value_type const & s
++ typename tvec4<T>::value_type const & s_
+ )
+ {
+ return tvec4<T>(
+- v.x / s,
+- v.y / s,
+- v.z / s,
+- v.w / s);
++ v.x / s_,
++ v.y / s_,
++ v.z / s_,
++ v.w / s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T> operator/
+ (
+- typename tvec4<T>::value_type const & s,
++ typename tvec4<T>::value_type const & s_,
+ tvec4<T> const & v
+ )
+ {
+ return tvec4<T>(
+- s / v.x,
+- s / v.y,
+- s / v.z,
+- s / v.w);
++ s_ / v.x,
++ s_ / v.y,
++ s_ / v.z,
++ s_ / v.w);
+ }
+
+ template <typename T>
+@@ -1012,28 +1012,28 @@
+ GLM_FUNC_QUALIFIER tvec4<T> operator%
+ (
+ tvec4<T> const & v,
+- typename tvec4<T>::value_type const & s
++ typename tvec4<T>::value_type const & s_
+ )
+ {
+ return tvec4<T>(
+- v.x % s,
+- v.y % s,
+- v.z % s,
+- v.w % s);
++ v.x % s_,
++ v.y % s_,
++ v.z % s_,
++ v.w % s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T> operator%
+ (
+- typename tvec4<T>::value_type const & s,
++ typename tvec4<T>::value_type const & s_,
+ tvec4<T> const & v
+ )
+ {
+ return tvec4<T>(
+- s % v.x,
+- s % v.y,
+- s % v.z,
+- s % v.w);
++ s_ % v.x,
++ s_ % v.y,
++ s_ % v.z,
++ s_ % v.w);
+ }
+
+ template <typename T>
+@@ -1054,28 +1054,28 @@
+ GLM_FUNC_QUALIFIER tvec4<T> operator&
+ (
+ tvec4<T> const & v,
+- typename tvec4<T>::value_type const & s
++ typename tvec4<T>::value_type const & s_
+ )
+ {
+ return tvec4<T>(
+- v.x & s,
+- v.y & s,
+- v.z & s,
+- v.w & s);
++ v.x & s_,
++ v.y & s_,
++ v.z & s_,
++ v.w & s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T> operator&
+ (
+- typename tvec4<T>::value_type const & s,
++ typename tvec4<T>::value_type const & s_,
+ tvec4<T> const & v
+ )
+ {
+ return tvec4<T>(
+- s & v.x,
+- s & v.y,
+- s & v.z,
+- s & v.w);
++ s_ & v.x,
++ s_ & v.y,
++ s_ & v.z,
++ s_ & v.w);
+ }
+
+ template <typename T>
+@@ -1096,28 +1096,28 @@
+ GLM_FUNC_QUALIFIER tvec4<T> operator|
+ (
+ tvec4<T> const & v,
+- typename tvec4<T>::value_type const & s
++ typename tvec4<T>::value_type const & s_
+ )
+ {
+ return tvec4<T>(
+- v.x | s,
+- v.y | s,
+- v.z | s,
+- v.w | s);
++ v.x | s_,
++ v.y | s_,
++ v.z | s_,
++ v.w | s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T> operator|
+ (
+- typename tvec4<T>::value_type const & s,
++ typename tvec4<T>::value_type const & s_,
+ tvec4<T> const & v
+ )
+ {
+ return tvec4<T>(
+- s | v.x,
+- s | v.y,
+- s | v.z,
+- s | v.w);
++ s_ | v.x,
++ s_ | v.y,
++ s_ | v.z,
++ s_ | v.w);
+ }
+
+ template <typename T>
+@@ -1138,28 +1138,28 @@
+ GLM_FUNC_QUALIFIER tvec4<T> operator^
+ (
+ tvec4<T> const & v,
+- typename tvec4<T>::value_type const & s
++ typename tvec4<T>::value_type const & s_
+ )
+ {
+ return tvec4<T>(
+- v.x ^ s,
+- v.y ^ s,
+- v.z ^ s,
+- v.w ^ s);
++ v.x ^ s_,
++ v.y ^ s_,
++ v.z ^ s_,
++ v.w ^ s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T> operator^
+ (
+- typename tvec4<T>::value_type const & s,
++ typename tvec4<T>::value_type const & s_,
+ tvec4<T> const & v
+ )
+ {
+ return tvec4<T>(
+- s ^ v.x,
+- s ^ v.y,
+- s ^ v.z,
+- s ^ v.w);
++ s_ ^ v.x,
++ s_ ^ v.y,
++ s_ ^ v.z,
++ s_ ^ v.w);
+ }
+
+ template <typename T>
+@@ -1180,28 +1180,28 @@
+ GLM_FUNC_QUALIFIER tvec4<T> operator<<
+ (
+ tvec4<T> const & v,
+- typename tvec4<T>::value_type const & s
++ typename tvec4<T>::value_type const & s_
+ )
+ {
+ return tvec4<T>(
+- v.x << s,
+- v.y << s,
+- v.z << s,
+- v.w << s);
++ v.x << s_,
++ v.y << s_,
++ v.z << s_,
++ v.w << s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T> operator<<
+ (
+- typename tvec4<T>::value_type const & s,
++ typename tvec4<T>::value_type const & s_,
+ tvec4<T> const & v
+ )
+ {
+ return tvec4<T>(
+- s << v.x,
+- s << v.y,
+- s << v.z,
+- s << v.w);
++ s_ << v.x,
++ s_ << v.y,
++ s_ << v.z,
++ s_ << v.w);
+ }
+
+ template <typename T>
+@@ -1222,28 +1222,28 @@
+ GLM_FUNC_QUALIFIER tvec4<T> operator>>
+ (
+ tvec4<T> const & v,
+- typename tvec4<T>::value_type const & s
++ typename tvec4<T>::value_type const & s_
+ )
+ {
+ return tvec4<T>(
+- v.x >> s,
+- v.y >> s,
+- v.z >> s,
+- v.w >> s);
++ v.x >> s_,
++ v.y >> s_,
++ v.z >> s_,
++ v.w >> s_);
+ }
+
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec4<T> operator>>
+ (
+- typename tvec4<T>::value_type const & s,
++ typename tvec4<T>::value_type const & s_,
+ tvec4<T> const & v
+ )
+ {
+ return tvec4<T>(
+- s >> v.x,
+- s >> v.y,
+- s >> v.z,
+- s >> v.w);
++ s_ >> v.x,
++ s_ >> v.y,
++ s_ >> v.z,
++ s_ >> v.w);
+ }
+
+ template <typename T>
+@@ -1279,15 +1279,15 @@
+ template <typename T>
+ tref4<T>::tref4
+ (
+- T & x,
+- T & y,
+- T & z,
+- T & w
+- ) :
+- x(x),
+- y(y),
+- z(z),
+- w(w)
++ T & x_,
++ T & y_,
++ T & z_,
++ T & w_
++ ) :
++ x(x_),
++ y(y_),
++ z(z_),
++ w(w_)
+ {}
+
+ template <typename T>
+diff -ur glm.org/glm/gtc/quaternion.inl glm/glm/gtc/quaternion.inl
+--- glm.org/glm/gtc/quaternion.inl 2013-12-08 17:04:59.707365220 +0100
++++ glm/glm/gtc/quaternion.inl 2013-12-08 17:07:20.081840460 +0100
+@@ -60,15 +60,15 @@
+ template <typename T>
+ GLM_FUNC_QUALIFIER tquat<T>::tquat
+ (
+- value_type const & w,
+- value_type const & x,
+- value_type const & y,
+- value_type const & z
++ value_type const & w_,
++ value_type const & x_,
++ value_type const & y_,
++ value_type const & z_
+ ) :
+- x(x),
+- y(y),
+- z(z),
+- w(w)
++ x(x_),
++ y(y_),
++ z(z_),
++ w(w_)
+ {}
+
+ //////////////////////////////////////////////////////////////
diff --git a/glm/Wshadow.patch b/glm/Wshadow-windows.patch
similarity index 100%
rename from glm/Wshadow.patch
rename to glm/Wshadow-windows.patch
commit d655dd47a02345c3887b9be20c868bee2a767696
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Mon Dec 9 09:21:40 2013 +0100
fix windows build
Change-Id: I2c2c22ebfaeb1787b6a848a296476bc2bdf5130e
diff --git a/chart2/source/view/main/OpenGLRender.cxx b/chart2/source/view/main/OpenGLRender.cxx
index a52430d..7ae8fd3 100644
--- a/chart2/source/view/main/OpenGLRender.cxx
+++ b/chart2/source/view/main/OpenGLRender.cxx
@@ -896,9 +896,9 @@ void OpenGLRender::Release()
#if defined( WNT )
wglMakeCurrent(NULL, NULL);
if (!m_iExternRC)
- wglDeleteContext(glWin.m_hRC);
+ wglDeleteContext(glWin.hRC);
if (!m_iExternDC)
- ReleaseDC(mglWin._hWnd, mglWin._hDC);
+ ReleaseDC(glWin.hWnd, glWin.hDC);
#elif defined( UNX )
glXMakeCurrent(glWin.dpy, None, NULL);
commit f29ef5a5582b16a086b37dcdbb328230e430ea9d
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Mon Dec 9 09:14:31 2013 +0100
fix glm patch file
Change-Id: Id06582e7cacb9752f102015619368810959582a0
diff --git a/glm/Wshadow.patch b/glm/Wshadow.patch
index 8607753..c6c9c65 100644
--- a/glm/Wshadow.patch
+++ b/glm/Wshadow.patch
@@ -1,2659 +1,2659 @@
-diff -ur glm.org/glm/core/_detail.hpp glm/glm/core/_detail.hpp
---- glm.org/glm/core/_detail.hpp 2013-12-09 02:05:30.115442079 +0100
-+++ glm/glm/core/_detail.hpp 2013-12-09 02:06:33.749941584 +0100
-@@ -136,12 +136,12 @@
- i(0)
- {}
-
-- GLM_FUNC_QUALIFIER uif32(float f) :
-- f(f)
-+ GLM_FUNC_QUALIFIER uif32(float f_) :
-+ f(f_)
- {}
-
-- GLM_FUNC_QUALIFIER uif32(unsigned int i) :
-- i(i)
-+ GLM_FUNC_QUALIFIER uif32(unsigned int i_) :
-+ i(i_)
- {}
-
- float f;
-@@ -154,12 +154,12 @@
- i(0)
- {}
-
-- GLM_FUNC_QUALIFIER uif64(double f) :
-- f(f)
-+ GLM_FUNC_QUALIFIER uif64(double f_) :
-+ f(f_)
- {}
-
-- GLM_FUNC_QUALIFIER uif64(uint64 i) :
-- i(i)
-+ GLM_FUNC_QUALIFIER uif64(uint64 i_) :
-+ i(i_)
- {}
-
- double f;
-diff -ur glm.org/glm/core/type_vec1.hpp glm/glm/core/type_vec1.hpp
---- glm.org/glm/core/type_vec1.hpp 2013-12-08 17:04:59.706365245 +0100
-+++ glm/glm/core/type_vec1.hpp 2013-12-08 17:07:20.079840510 +0100
-@@ -86,19 +86,19 @@
- GLM_FUNC_DECL explicit tvec1(
- ctor);
- GLM_FUNC_DECL explicit tvec1(
-- value_type const & s);
-+ value_type const & s_);
-
- //////////////////////////////////////
- // Swizzle constructors
-
-- GLM_FUNC_DECL tvec1(tref1<T> const & r);
-+ GLM_FUNC_DECL tvec1(tref1<T> const & r_);
-
- //////////////////////////////////////
- // Convertion scalar constructors
-
- //! Explicit converions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification)
- template <typename U>
-- GLM_FUNC_DECL explicit tvec1(U const & s);
-+ GLM_FUNC_DECL explicit tvec1(U const & s_);
-
- //////////////////////////////////////
- // Convertion vector constructors
-@@ -121,19 +121,19 @@
- GLM_FUNC_DECL tvec1<T> & operator= (tvec1<U> const & v);
-
- template <typename U>
-- GLM_FUNC_DECL tvec1<T> & operator+=(U const & s);
-+ GLM_FUNC_DECL tvec1<T> & operator+=(U const & s_);
- template <typename U>
- GLM_FUNC_DECL tvec1<T> & operator+=(tvec1<U> const & v);
- template <typename U>
-- GLM_FUNC_DECL tvec1<T> & operator-=(U const & s);
-+ GLM_FUNC_DECL tvec1<T> & operator-=(U const & s_);
- template <typename U>
- GLM_FUNC_DECL tvec1<T> & operator-=(tvec1<U> const & v);
- template <typename U>
-- GLM_FUNC_DECL tvec1<T> & operator*=(U const & s);
-+ GLM_FUNC_DECL tvec1<T> & operator*=(U const & s_);
- template <typename U>
- GLM_FUNC_DECL tvec1<T> & operator*=(tvec1<U> const & v);
- template <typename U>
-- GLM_FUNC_DECL tvec1<T> & operator/=(U const & s);
-+ GLM_FUNC_DECL tvec1<T> & operator/=(U const & s_);
- template <typename U>
- GLM_FUNC_DECL tvec1<T> & operator/=(tvec1<U> const & v);
- GLM_FUNC_DECL tvec1<T> & operator++();
-@@ -143,27 +143,27 @@
- // Unary bit operators
-
- template <typename U>
-- GLM_FUNC_DECL tvec1<T> & operator%=(U const & s);
-+ GLM_FUNC_DECL tvec1<T> & operator%=(U const & s_);
- template <typename U>
- GLM_FUNC_DECL tvec1<T> & operator%=(tvec1<U> const & v);
- template <typename U>
-- GLM_FUNC_DECL tvec1<T> & operator&=(U const & s);
-+ GLM_FUNC_DECL tvec1<T> & operator&=(U const & s_);
- template <typename U>
- GLM_FUNC_DECL tvec1<T> & operator&=(tvec1<U> const & v);
- template <typename U>
-- GLM_FUNC_DECL tvec1<T> & operator|=(U const & s);
-+ GLM_FUNC_DECL tvec1<T> & operator|=(U const & s_);
- template <typename U>
- GLM_FUNC_DECL tvec1<T> & operator|=(tvec1<U> const & v);
- template <typename U>
-- GLM_FUNC_DECL tvec1<T> & operator^=(U const & s);
-+ GLM_FUNC_DECL tvec1<T> & operator^=(U const & s_);
- template <typename U>
- GLM_FUNC_DECL tvec1<T> & operator^=(tvec1<U> const & v);
- template <typename U>
-- GLM_FUNC_DECL tvec1<T> & operator<<=(U const & s);
-+ GLM_FUNC_DECL tvec1<T> & operator<<=(U const & s_);
- template <typename U>
- GLM_FUNC_DECL tvec1<T> & operator<<=(tvec1<U> const & v);
- template <typename U>
-- GLM_FUNC_DECL tvec1<T> & operator>>=(U const & s);
-+ GLM_FUNC_DECL tvec1<T> & operator>>=(U const & s_);
- template <typename U>
- GLM_FUNC_DECL tvec1<T> & operator>>=(tvec1<U> const & v);
-
-diff -ur glm.org/glm/core/type_vec1.inl glm/glm/core/type_vec1.inl
---- glm.org/glm/core/type_vec1.inl 2013-12-08 17:04:59.707365220 +0100
-+++ glm/glm/core/type_vec1.inl 2013-12-08 17:07:20.081840460 +0100
-@@ -87,9 +87,9 @@
- template <typename T>
- GLM_FUNC_QUALIFIER tvec1<T>::tvec1
- (
-- value_type const & s
-+ value_type const & s_
- ) :
-- x(s)
-+ x(s_)
- {}
-
- //////////////////////////////////////
-@@ -98,9 +98,9 @@
- template <typename T>
- GLM_FUNC_QUALIFIER tvec1<T>::tvec1
- (
-- tref1<T> const & r
-+ tref1<T> const & r_
- ) :
-- x(r.x)
-+ x(r_.x)
- {}
-
- //////////////////////////////////////
-@@ -110,9 +110,9 @@
- template <typename U>
- GLM_FUNC_QUALIFIER tvec1<T>::tvec1
- (
-- U const & s
-+ U const & s_
- ) :
-- x(value_type(s))
-+ x(value_type(s_))
- {}
-
- //////////////////////////////////////
-@@ -173,10 +173,10 @@
- template <typename U>
- GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator+=
- (
-- U const & s
-+ U const & s_
- )
- {
-- this->x += T(s);
-+ this->x += T(s_);
- return *this;
- }
-
-@@ -195,10 +195,10 @@
- template <typename U>
- GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator-=
- (
-- U const & s
-+ U const & s_
- )
- {
-- this->x -= T(s);
-+ this->x -= T(s_);
- return *this;
- }
-
-@@ -217,10 +217,10 @@
- template <typename U>
- GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator*=
- (
-- U const & s
-+ U const & s_
- )
- {
-- this->x *= T(s);
-+ this->x *= T(s_);
- return *this;
- }
-
-@@ -239,10 +239,10 @@
- template <typename U>
- GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator/=
- (
-- U const & s
-+ U const & s_
- )
- {
-- this->x /= T(s);
-+ this->x /= T(s_);
- return *this;
- }
-
-@@ -301,10 +301,10 @@
- template <typename U>
- GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator%=
- (
-- U const & s
-+ U const & s_
- )
- {
-- this->x %= T(s);
-+ this->x %= T(s_);
- return *this;
- }
-
-@@ -323,10 +323,10 @@
- template <typename U>
- GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator&=
- (
-- U const & s
-+ U const & s_
- )
- {
-- this->x &= T(s);
-+ this->x &= T(s_);
- return *this;
- }
-
-@@ -345,10 +345,10 @@
- template <typename U>
- GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator|=
- (
-- U const & s
-+ U const & s_
- )
- {
-- this->x |= T(s);
-+ this->x |= T(s_);
- return *this;
- }
-
-@@ -367,10 +367,10 @@
- template <typename U>
- GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator^=
- (
-- U const & s
-+ U const & s_
- )
- {
-- this->x ^= T(s);
-+ this->x ^= T(s_);
- return *this;
- }
-
-@@ -389,10 +389,10 @@
- template <typename U>
- GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator<<=
- (
-- U const & s
-+ U const & s_
- )
- {
-- this->x <<= T(s);
-+ this->x <<= T(s_);
- return *this;
- }
-
-@@ -411,10 +411,10 @@
- template <typename U>
- GLM_FUNC_QUALIFIER tvec1<T> & tvec1<T>::operator>>=
- (
-- U const & s
-+ U const & s_
- )
- {
-- this->x >>= T(s);
-+ this->x >>= T(s_);
- return *this;
- }
-
-@@ -434,21 +434,21 @@
-
- template <typename T>
- GLM_FUNC_QUALIFIER T
-- tvec1<T>::swizzle(comp x) const
-+ tvec1<T>::swizzle(comp x_) const
- {
-- return (*this)[x];
-+ return (*this)[x_];
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec2<T>
- tvec1<T>::swizzle
- (
-- comp x,
-+ comp x_,
- comp y
- ) const
- {
- return tvec2<T>(
-- (*this)[x],
-+ (*this)[x_],
- (*this)[y]);
- }
-
-@@ -456,13 +456,13 @@
- GLM_FUNC_QUALIFIER tvec3<T>
- tvec1<T>::swizzle
- (
-- comp x,
-+ comp x_,
- comp y,
- comp z
- ) const
- {
- return tvec3<T>(
-- (*this)[x],
-+ (*this)[x_],
- (*this)[y],
- (*this)[z]);
- }
-@@ -471,14 +471,14 @@
- GLM_FUNC_QUALIFIER tvec4<T>
- tvec1<T>::swizzle
- (
-- comp x,
-+ comp x_,
- comp y,
- comp z,
- comp w
- ) const
- {
- return tvec4<T>(
-- (*this)[x],
-+ (*this)[x_],
- (*this)[y],
- (*this)[z],
- (*this)[w]);
-@@ -488,11 +488,11 @@
- GLM_FUNC_QUALIFIER tref1<T>
- tvec1<T>::swizzle
- (
-- comp x
-+ comp x_
- )
- {
- return tref1<T>(
-- (*this)[x]);
-+ (*this)[x_]);
- }
-
- //////////////////////////////////////
-@@ -502,22 +502,22 @@
- GLM_FUNC_QUALIFIER tvec1<T> operator+
- (
- tvec1<T> const & v,
-- typename tvec1<T>::value_type const & s
-+ typename tvec1<T>::value_type const & s_
- )
- {
- return tvec1<T>(
-- v.x + s);
-+ v.x + s_);
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec1<T> operator+
- (
-- typename tvec1<T>::value_type const & s,
-+ typename tvec1<T>::value_type const & s_,
- tvec1<T> const & v
- )
- {
- return tvec1<T>(
-- s + v.x);
-+ s_ + v.x);
- }
-
- template <typename T>
-@@ -536,22 +536,22 @@
- GLM_FUNC_QUALIFIER tvec1<T> operator-
- (
- tvec1<T> const & v,
-- typename tvec1<T>::value_type const & s
-+ typename tvec1<T>::value_type const & s_
- )
- {
- return tvec1<T>(
-- v.x - s);
-+ v.x - s_);
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec1<T> operator-
- (
-- typename tvec1<T>::value_type const & s,
-+ typename tvec1<T>::value_type const & s_,
- tvec1<T> const & v
- )
- {
- return tvec1<T>(
-- s - v.x);
-+ s_ - v.x);
- }
-
- template <typename T>
-@@ -570,22 +570,22 @@
- GLM_FUNC_QUALIFIER tvec1<T> operator*
- (
- tvec1<T> const & v,
-- typename tvec1<T>::value_type const & s
-+ typename tvec1<T>::value_type const & s_
- )
- {
- return tvec1<T>(
-- v.x * s);
-+ v.x * s_);
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec1<T> operator*
- (
-- typename tvec1<T>::value_type const & s,
-+ typename tvec1<T>::value_type const & s_,
- tvec1<T> const & v
- )
- {
- return tvec1<T>(
-- s * v.x);
-+ s_ * v.x);
- }
-
- template <typename T>
-@@ -604,22 +604,22 @@
- GLM_FUNC_QUALIFIER tvec1<T> operator/
- (
- tvec1<T> const & v,
-- typename tvec1<T>::value_type const & s
-+ typename tvec1<T>::value_type const & s_
- )
- {
- return tvec1<T>(
-- v.x / s);
-+ v.x / s_);
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec1<T> operator/
- (
-- typename tvec1<T>::value_type const & s,
-+ typename tvec1<T>::value_type const & s_,
- tvec1<T> const & v
- )
- {
- return tvec1<T>(
-- s / v.x);
-+ s_ / v.x);
- }
-
- template <typename T>
-@@ -673,22 +673,22 @@
- GLM_FUNC_QUALIFIER tvec1<T> operator%
- (
- tvec1<T> const & v,
-- typename tvec1<T>::value_type const & s
-+ typename tvec1<T>::value_type const & s_
- )
- {
- return tvec1<T>(
-- v.x % s);
-+ v.x % s_);
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec1<T> operator%
- (
-- typename tvec1<T>::value_type const & s,
-+ typename tvec1<T>::value_type const & s_,
- tvec1<T> const & v
- )
- {
- return tvec1<T>(
-- s % v.x);
-+ s_ % v.x);
- }
-
- template <typename T>
-@@ -706,22 +706,22 @@
- GLM_FUNC_QUALIFIER tvec1<T> operator&
- (
- tvec1<T> const & v,
-- typename tvec1<T>::value_type const & s
-+ typename tvec1<T>::value_type const & s_
- )
- {
- return tvec1<T>(
-- v.x & s);
-+ v.x & s_);
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec1<T> operator&
- (
-- typename tvec1<T>::value_type const & s,
-+ typename tvec1<T>::value_type const & s_,
- tvec1<T> const & v
- )
- {
- return tvec1<T>(
-- s & v.x);
-+ s_ & v.x);
- }
-
- template <typename T>
-@@ -739,22 +739,22 @@
- GLM_FUNC_QUALIFIER tvec1<T> operator|
- (
- tvec1<T> const & v,
-- typename tvec1<T>::value_type const & s
-+ typename tvec1<T>::value_type const & s_
- )
- {
- return tvec1<T>(
-- v.x | s);
-+ v.x | s_);
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec1<T> operator|
- (
-- typename tvec1<T>::value_type const & s,
-+ typename tvec1<T>::value_type const & s_,
- tvec1<T> const & v
- )
- {
- return tvec1<T>(
-- s | v.x);
-+ s_ | v.x);
- }
-
- template <typename T>
-@@ -772,22 +772,22 @@
- GLM_FUNC_QUALIFIER tvec1<T> operator^
- (
- tvec1<T> const & v,
-- typename tvec1<T>::value_type const & s
-+ typename tvec1<T>::value_type const & s_
- )
- {
- return tvec1<T>(
-- v.x ^ s);
-+ v.x ^ s_);
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec1<T> operator^
- (
-- typename tvec1<T>::value_type const & s,
-+ typename tvec1<T>::value_type const & s_,
- tvec1<T> const & v
- )
- {
- return tvec1<T>(
-- s ^ v.x);
-+ s_ ^ v.x);
- }
-
- template <typename T>
-@@ -805,22 +805,22 @@
- GLM_FUNC_QUALIFIER tvec1<T> operator<<
- (
- tvec1<T> const & v,
-- typename tvec1<T>::value_type const & s
-+ typename tvec1<T>::value_type const & s_
- )
- {
- return tvec1<T>(
-- v.x << s);
-+ v.x << s_);
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec1<T> operator<<
- (
-- typename tvec1<T>::value_type const & s,
-+ typename tvec1<T>::value_type const & s_,
- tvec1<T> const & v
- )
- {
- return tvec1<T>(
-- s << v.x);
-+ s_ << v.x);
- }
-
- template <typename T>
-@@ -838,22 +838,22 @@
- GLM_FUNC_QUALIFIER tvec1<T> operator>>
- (
- tvec1<T> const & v,
-- typename tvec1<T>::value_type const & s
-+ typename tvec1<T>::value_type const & s_
- )
- {
- return tvec1<T>(
-- v.x >> s);
-+ v.x >> s_);
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec1<T> operator>>
- (
-- typename tvec1<T>::value_type const & s,
-+ typename tvec1<T>::value_type const & s_,
- tvec1<T> const & v
- )
- {
- return tvec1<T>(
-- s >> v.x);
-+ s_ >> v.x);
- }
-
- template <typename T>
-@@ -883,9 +883,9 @@
- template <typename T>
- GLM_FUNC_QUALIFIER tref1<T>::tref1
- (
-- T & x
-+ T & x_
- ) :
-- x(x)
-+ x(x_)
- {}
-
- template <typename T>
-diff -ur glm.org/glm/core/type_vec2.inl glm/glm/core/type_vec2.inl
---- glm.org/glm/core/type_vec2.inl 2013-12-08 17:04:59.705365270 +0100
-+++ glm/glm/core/type_vec2.inl 2013-12-08 17:07:20.078840535 +0100
-@@ -91,10 +91,10 @@
- template <typename T>
- GLM_FUNC_QUALIFIER tvec2<T>::tvec2
- (
-- value_type const & s
-+ value_type const & s_
- ) :
-- x(s),
-- y(s)
-+ x(s_),
-+ y(s_)
- {}
-
- template <typename T>
-@@ -113,10 +113,10 @@
- template <typename T>
- GLM_FUNC_QUALIFIER tvec2<T>::tvec2
- (
-- tref2<T> const & r
-+ tref2<T> const & r_
- ) :
-- x(r.x),
-- y(r.y)
-+ x(r_.x),
-+ y(r_.y)
- {}
-
- //////////////////////////////////////
-@@ -126,10 +126,10 @@
- template <typename U>
- GLM_FUNC_QUALIFIER tvec2<T>::tvec2
- (
-- U const & x
-+ U const & x_
- ) :
-- x(value_type(x)),
-- y(value_type(x))
-+ x(value_type(x_)),
-+ y(value_type(x_))
- {}
-
- template <typename T>
-@@ -204,10 +204,10 @@
-
- template <typename T>
- template <typename U>
-- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator+=(U s)
-+ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator+=(U s_)
- {
-- this->x += T(s);
-- this->y += T(s);
-+ this->x += T(s_);
-+ this->y += T(s_);
- return *this;
- }
-
-@@ -225,10 +225,10 @@
-
- template <typename T>
- template <typename U>
-- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator-=(U s)
-+ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator-=(U s_)
- {
-- this->x -= T(s);
-- this->y -= T(s);
-+ this->x -= T(s_);
-+ this->y -= T(s_);
- return *this;
- }
-
-@@ -246,10 +246,10 @@
-
- template <typename T>
- template <typename U>
-- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator*=(U s)
-+ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator*=(U s_)
- {
-- this->x *= T(s);
-- this->y *= T(s);
-+ this->x *= T(s_);
-+ this->y *= T(s_);
- return *this;
- }
-
-@@ -267,10 +267,10 @@
-
- template <typename T>
- template <typename U>
-- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator/=(U s)
-+ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator/=(U s_)
- {
-- this->x /= T(s);
-- this->y /= T(s);
-+ this->x /= T(s_);
-+ this->y /= T(s_);
- return *this;
- }
-
-@@ -330,10 +330,10 @@
-
- template <typename T>
- template <typename U>
-- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator%=(U s)
-+ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator%=(U s_)
- {
-- this->x %= T(s);
-- this->y %= T(s);
-+ this->x %= T(s_);
-+ this->y %= T(s_);
- return *this;
- }
-
-@@ -351,10 +351,10 @@
-
- template <typename T>
- template <typename U>
-- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator&=(U s)
-+ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator&=(U s_)
- {
-- this->x &= T(s);
-- this->y &= T(s);
-+ this->x &= T(s_);
-+ this->y &= T(s_);
- return *this;
- }
-
-@@ -372,10 +372,10 @@
-
- template <typename T>
- template <typename U>
-- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator|=(U s)
-+ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator|=(U s_)
- {
-- this->x |= T(s);
-- this->y |= T(s);
-+ this->x |= T(s_);
-+ this->y |= T(s_);
- return *this;
- }
-
-@@ -393,10 +393,10 @@
-
- template <typename T>
- template <typename U>
-- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator^=(U s)
-+ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator^=(U s_)
- {
-- this->x ^= T(s);
-- this->y ^= T(s);
-+ this->x ^= T(s_);
-+ this->y ^= T(s_);
- return *this;
- }
-
-@@ -414,10 +414,10 @@
-
- template <typename T>
- template <typename U>
-- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator<<=(U s)
-+ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator<<=(U s_)
- {
-- this->x <<= T(s);
-- this->y <<= T(s);
-+ this->x <<= T(s_);
-+ this->y <<= T(s_);
- return *this;
- }
-
-@@ -435,10 +435,10 @@
-
- template <typename T>
- template <typename U>
-- GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator>>=(U s)
-+ GLM_FUNC_QUALIFIER tvec2<T> & tvec2<T>::operator>>=(U s_)
- {
-- this->x >>= T(s);
-- this->y >>= T(s);
-+ this->x >>= T(s_);
-+ this->y >>= T(s_);
- return *this;
- }
-
-@@ -460,50 +460,50 @@
- template <typename T>
- GLM_FUNC_QUALIFIER typename tvec2<T>::value_type tvec2<T>::swizzle
- (
-- comp x
-+ comp x_
- ) const
- {
-- return (*this)[x];
-+ return (*this)[x_];
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec2<T> tvec2<T>::swizzle
- (
-- comp x,
-- comp y
-+ comp x_,
-+ comp y_
- ) const
- {
- return tvec2<T>(
-- (*this)[x],
-- (*this)[y]);
-+ (*this)[x_],
-+ (*this)[y_]);
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec3<T> tvec2<T>::swizzle
- (
-- comp x,
-- comp y,
-+ comp x_,
-+ comp y_,
- comp z
- ) const
- {
- return tvec3<T>(
-- (*this)[x],
-- (*this)[y],
-+ (*this)[x_],
-+ (*this)[y_],
- (*this)[z]);
- }
-
- template <typename T>
- GLM_FUNC_QUALIFIER tvec4<T> tvec2<T>::swizzle
- (
-- comp x,
-- comp y,
-+ comp x_,
-+ comp y_,
- comp z,
- comp w
- ) const
- {
- return tvec4<T>(
-- (*this)[x],
-- (*this)[y],
-+ (*this)[x_],
-+ (*this)[y_],
- (*this)[z],
- (*this)[w]);
- }
-@@ -511,13 +511,13 @@
- template <typename T>
- GLM_FUNC_QUALIFIER tref2<T> tvec2<T>::swizzle
- (
-- comp x,
-- comp y
-+ comp x_,
-+ comp y_
- )
- {
- return tref2<T>(
-- (*this)[x],
-- (*this)[y]);
-+ (*this)[x_],
-+ (*this)[y_]);
- }
-
- //////////////////////////////////////
-@@ -527,12 +527,12 @@
- GLM_FUNC_QUALIFIER tvec2<T> operator+
- (
- tvec2<T> const & v,
-- T const & s
-+ T const & s_
- )
- {
- return tvec2<T>(
-- v.x + T(s),
-- v.y + T(s));
-+ v.x + T(s_),
-+ v.y + T(s_));
- }
-
- template <typename T>
-@@ -942,11 +942,11 @@
- template <typename T>
- tref2<T>::tref2
- (
-- T & x,
-- T & y
-+ T & x_,
-+ T & y_
- ) :
-- x(x),
-- y(y)
-+ x(x_),
-+ y(y_)
- {}
-
- template <typename T>
-diff -ur glm.org/glm/core/type_vec3.hpp glm/glm/core/type_vec3.hpp
---- glm.org/glm/core/type_vec3.hpp 2013-12-08 17:04:59.707365220 +0100
-+++ glm/glm/core/type_vec3.hpp 2013-12-08 17:07:20.081840460 +0100
-@@ -170,15 +170,15 @@
- }
-
- template <int E0, int E1>
-- GLM_FUNC_DECL tvec3(glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v, T const & s)
-+ GLM_FUNC_DECL tvec3(glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v, T const & s_)
- {
-- *this = tvec3<T>(v(), s);
-+ *this = tvec3<T>(v(), s_);
- }
-
- template <int E0, int E1>
-- GLM_FUNC_DECL tvec3(T const & s, glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v)
-+ GLM_FUNC_DECL tvec3(T const & s_, glm::detail::swizzle<2, T, tvec2<T>, E0, E1, -1, -2> const & v)
- {
-- *this = tvec3<T>(s, v());
-+ *this = tvec3<T>(s_, v());
- }
-
- //////////////////////////////////////
-diff -ur glm.org/glm/core/type_vec3.inl glm/glm/core/type_vec3.inl
---- glm.org/glm/core/type_vec3.inl 2013-12-08 17:04:59.706365245 +0100
-+++ glm/glm/core/type_vec3.inl 2013-12-08 17:07:20.079840510 +0100
-@@ -93,11 +93,11 @@
- template <typename T>
- GLM_FUNC_QUALIFIER tvec3<T>::tvec3
- (
-- value_type const & s
-+ value_type const & s_
- ) :
-- x(s),
-- y(s),
-- z(s)
-+ x(s_),
-+ y(s_),
-+ z(s_)
- {}
-
- template <typename T>
-@@ -118,11 +118,11 @@
- template <typename T>
- GLM_FUNC_QUALIFIER tvec3<T>::tvec3
- (
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list