[Libreoffice-commits] core.git: Branch 'feature/chart-opengl' - 3 commits - chart2/inc chart2/source config_host.mk.in configure.ac download.lst glm/Makefile glm/Module_glm.mk glm/README glm/UnpackedTarball_glm.mk glm/Wshadow.patch Makefile.fetch RepositoryExternal.mk RepositoryModule_host.mk

Markus Mohrhard markus.mohrhard at googlemail.com
Sun Dec 8 17:21:22 PST 2013


 Makefile.fetch                             |    1 
 RepositoryExternal.mk                      |   17 
 RepositoryModule_host.mk                   |    1 
 chart2/inc/ChartModel.hxx                  |    3 
 chart2/source/inc/InternalDataProvider.hxx |    1 
 config_host.mk.in                          |    1 
 configure.ac                               |    5 
 download.lst                               |    1 
 glm/Makefile                               |    7 
 glm/Module_glm.mk                          |   20 
 glm/README                                 |    3 
 glm/UnpackedTarball_glm.mk                 |   20 
 glm/Wshadow.patch                          | 2659 +++++++++++++++++++++++++++++
 13 files changed, 2736 insertions(+), 3 deletions(-)

New commits:
commit c95530fac7a92f4e26f2e9df6017589ca366183d
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date:   Sun Dec 8 15:50:18 2013 +0100

    add glm to the libreoffice build
    
    Change-Id: I567527399cee56deef2799126875f87b30242846

diff --git a/Makefile.fetch b/Makefile.fetch
index dbfcc5d..0a61e85 100644
--- a/Makefile.fetch
+++ b/Makefile.fetch
@@ -113,6 +113,7 @@ $(WORKDIR)/download: $(BUILDDIR)/config_host.mk $(SRCDIR)/download.lst $(SRCDIR)
 		$(GOOGLE_DOCS_EXTENSION_PACK) \
 		$(call fetch_Optional,GRAPHITE,$(GRAPHITE_TARBALL)) \
 		$(call fetch_Optional,GLIBC,$(GLIBC_TARBALL)) \
+		$(call fetch_Optional,GLM,$(GLM_TARBALL)) \
 		$(call fetch_Optional,HSQLDB,$(HSQLDB_TARBALL)) \
 		$(call fetch_Optional,HUNSPELL,$(HUNSPELL_TARBALL)) \
 		$(call fetch_Optional,HYPHEN,$(HYPHEN_TARBALL)) \
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index f072148..2ad8312 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -158,6 +158,23 @@ endef
 
 endif
 
+ifeq ($(SYSTEM_GLM),YES)
+
+gb_LinkTarget__use_glm_headers :=
+
+else
+
+define gb_LinkTarget__use_glm_headers
+$(call gb_LinkTarget_use_unpacked,$(1),glm)
+$(call gb_LinkTarget_set_include,$(1),\
+	-I$(call gb_UnpackedTarball_get_dir,glm) \
+	$$(INCLUDE) \
+)
+
+endef
+
+endif
+
 ifeq (SANE,$(filter SANE,$(BUILD_TYPE)))
 
 define gb_LinkTarget__use_sane_headers
diff --git a/RepositoryModule_host.mk b/RepositoryModule_host.mk
index 08bac243..7a97190 100644
--- a/RepositoryModule_host.mk
+++ b/RepositoryModule_host.mk
@@ -118,6 +118,7 @@ $(eval $(call gb_Module_add_moduledirs,libreoffice,\
 	$(call gb_Helper_optional,DESKTOP,l10ntools) \
 	$(call gb_Helper_optional,MARIADB,libmariadb) \
 	$(call gb_Helper_optional,MDDS,mdds) \
+	$(call gb_Helper_optional,GLM,glm) \
 	$(call gb_Helper_optional,MORE_FONTS,more_fonts) \
 	$(call gb_Helper_optional,MOZ,moz) \
 	$(call gb_Helper_optional,MARIADBC,mysqlc) \
diff --git a/config_host.mk.in b/config_host.mk.in
index 3b58d66..82430ff 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -499,6 +499,7 @@ export SYSTEM_FIREBIRD=@SYSTEM_FIREBIRD@
 export SYSTEM_GENBRK=@SYSTEM_GENBRK@
 export SYSTEM_GENCCODE=@SYSTEM_GENCCODE@
 export SYSTEM_GENCMN=@SYSTEM_GENCMN@
+export SYSTEM_GLM=@SYSTEM_GLM@
 export SYSTEM_GRAPHITE=@SYSTEM_GRAPHITE@
 export SYSTEM_HARFBUZZ=@SYSTEM_HARFBUZZ@
 export SYSTEM_HSQLDB=@SYSTEM_HSQLDB@
diff --git a/configure.ac b/configure.ac
index 8cb15d7..ef64a5d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -8654,6 +8654,11 @@ fi
 AC_SUBST([MDDS_CPPFLAGS])
 
 dnl ===================================================================
+dnl Check for system glm
+dnl ===================================================================
+libo_CHECK_SYSTEM_MODULE([glm], [GLM], [glm >= 0.9.4])
+
+dnl ===================================================================
 dnl Check for system vigra
 dnl ===================================================================
 AC_MSG_CHECKING([which vigra to use])
diff --git a/download.lst b/download.lst
index 2cb9371..94232ae 100644
--- a/download.lst
+++ b/download.lst
@@ -44,6 +44,7 @@ export FONT_SOURCESANS_TARBALL := 1e9ddfe25ac9577da709d7b2ea36f939-source-sans-f
 export FREETYPE_TARBALL := dbf2caca1d3afd410a29217a9809d397-freetype-2.4.8.tar.bz2
 export GRAPHITE_TARBALL := 7042305e4208af4c2d5249d814ccce58-graphite2-1.2.3.tgz
 export GLIBC_TARBALL := 4a660ce8466c9df01f19036435425c3a-glibc-2.1.3-stub.tar.gz
+export GLM_TARBALL :=  f070164b78c643431abbc1a97a6d0211-glm-0.9.4.6.zip
 export 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
diff --git a/glm/Makefile b/glm/Makefile
new file mode 100644
index 0000000..ccb1c85
--- /dev/null
+++ b/glm/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/glm/Module_glm.mk b/glm/Module_glm.mk
new file mode 100644
index 0000000..71ec270
--- /dev/null
+++ b/glm/Module_glm.mk
@@ -0,0 +1,20 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,glm))
+
+ifeq ($(SYSTEM_GLM),NO)
+
+$(eval $(call gb_Module_add_targets,glm,\
+	UnpackedTarball_glm \
+))
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/glm/README b/glm/README
new file mode 100644
index 0000000..30122f6
--- /dev/null
+++ b/glm/README
@@ -0,0 +1,3 @@
+Glm provides a header only library for OpenGL mathematics.
+
+It is available from http://glm.g-truc.net/0.9.4/index.html
diff --git a/glm/UnpackedTarball_glm.mk b/glm/UnpackedTarball_glm.mk
new file mode 100644
index 0000000..79d93af
--- /dev/null
+++ b/glm/UnpackedTarball_glm.mk
@@ -0,0 +1,20 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,glm))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,glm,$(GLM_TARBALL)))
+
+$(eval $(call gb_UnpackedTarball_set_patchlevel,glm,1))
+
+$(eval $(call gb_UnpackedTarball_add_patches,glm,\
+	glm/Wshadow.patch \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/glm/Wshadow.patch b/glm/Wshadow.patch
new file mode 100644
index 0000000..be4af10
--- /dev/null
+++ b/glm/Wshadow.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_)
+ 	{}
+ 
+ 	//////////////////////////////////////////////////////////////
commit a3e05f66ab3bd10c9edea87c560decdd37771069
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date:   Sun Nov 10 02:58:55 2013 +0100

    no auto_ptr in this class
    
    Change-Id: I9f915d10136b230d0f6354379ef0afc1da4dda28

diff --git a/chart2/source/inc/InternalDataProvider.hxx b/chart2/source/inc/InternalDataProvider.hxx
index 71a61a5..df8ca3a 100644
--- a/chart2/source/inc/InternalDataProvider.hxx
+++ b/chart2/source/inc/InternalDataProvider.hxx
@@ -37,7 +37,6 @@
 #include "CachedDataSequence.hxx"
 
 #include <map>
-#include <memory>
 
 namespace chart
 {
commit 95b0bbcfbbadcd7fc34a085ce854ee39229f0c83
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date:   Sun Nov 10 02:52:58 2013 +0100

    remove unused method
    
    Change-Id: Ifad7334a50eff0b4cd5c08f4b4907a98f09bd104

diff --git a/chart2/inc/ChartModel.hxx b/chart2/inc/ChartModel.hxx
index d3719da..17788a9 100644
--- a/chart2/inc/ChartModel.hxx
+++ b/chart2/inc/ChartModel.hxx
@@ -146,6 +146,7 @@ private:
     /** is only valid if m_xDataProvider is set. If m_xDataProvider is set to an
         external data provider this reference must be set to 0
     */
+    bool mbInternalDataProvider;
     ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XDataProvider >   m_xInternalDataProvider;
 
     ::com::sun::star::uno::Reference< com::sun::star::util::XNumberFormatsSupplier >
@@ -195,8 +196,6 @@ private:
         impl_notifyStorageChangeListeners()
                             throw(::com::sun::star::uno::RuntimeException);
 
-    void impl_killInternalData() throw( com::sun::star::util::CloseVetoException );
-
     void impl_store(
         const ::com::sun::star::uno::Sequence<
             ::com::sun::star::beans::PropertyValue >& rMediaDescriptor,


More information about the Libreoffice-commits mailing list