瀏覽代碼

Added error for unsupported compiler versions

Christophe Riccio 12 年之前
父節點
當前提交
9464e5b590
共有 3 個文件被更改,包括 9 次插入37 次删除
  1. 6 26
      glm/core/setup.hpp
  2. 1 0
      readme.txt
  3. 2 11
      test/core/core_func_integer.cpp

+ 6 - 26
glm/core/setup.hpp

@@ -154,8 +154,6 @@
 #define GLM_COMPILER_GCC46			0x020000D0
 #define GLM_COMPILER_GCC47			0x020000E0
 #define GLM_COMPILER_GCC48			0x020000F0
-#define GLM_COMPILER_GCC49			0x02000100
-#define GLM_COMPILER_GCC50			0x02000200
 
 // G++ command line to display defined
 // echo "" | g++ -E -dM -x c++ - | sort
@@ -237,18 +235,8 @@
 
 // Visual C++
 #elif defined(_MSC_VER)
-#	if _MSC_VER == 900
-#		define GLM_COMPILER GLM_COMPILER_VC2
-#	elif _MSC_VER == 1000
-#		define GLM_COMPILER GLM_COMPILER_VC4
-#	elif _MSC_VER == 1100
-#		define GLM_COMPILER GLM_COMPILER_VC5
-#	elif _MSC_VER == 1200
-#		define GLM_COMPILER GLM_COMPILER_VC6
-#	elif _MSC_VER == 1300
-#		define GLM_COMPILER GLM_COMPILER_VC2002
-#	elif _MSC_VER == 1310
-#		define GLM_COMPILER GLM_COMPILER_VC2003
+#	if _MSC_VER < 1400
+#		error "GLM requires Visual C++ 2005 or higher"
 #	elif _MSC_VER == 1400
 #		define GLM_COMPILER GLM_COMPILER_VC2005
 #	elif _MSC_VER == 1500
@@ -265,7 +253,9 @@
 
 // Clang
 #elif defined(__clang__)
-#	if(__clang_major__ == 2) && (__clang_minor__ == 6)
+#	if (__clang_major__ <= 1) || ((__clang_major__ == 2) && (__clang_minor__ < 6))
+#		error "GLM requires Clang 2.6 or higher"
+#	elif(__clang_major__ == 2) && (__clang_minor__ == 6)
 #		define GLM_COMPILER GLM_COMPILER_CLANG26
 #	elif(__clang_major__ == 2) && (__clang_minor__ == 7)
 #		define GLM_COMPILER GLM_COMPILER_CLANG27
@@ -333,17 +323,7 @@
 
 // Borland C++
 #elif defined(_BORLANDC_)
-#	if defined(VER125)
-#		define GLM_COMPILER GLM_COMPILER_BCB4
-#	elif defined(VER130)
-#		define GLM_COMPILER GLM_COMPILER_BCB5
-#	elif defined(VER140)
-#		define GLM_COMPILER GLM_COMPILER_BCB6
-#	elif defined(VER200)
-#		define GLM_COMPILER GLM_COMPILER_BCB2009
-#	else
-#		define GLM_COMPILER GLM_COMPILER_BC
-#	endif
+#	define GLM_COMPILER GLM_COMPILER_BC
 
 // Codewarrior
 #elif defined(__MWERKS__)

+ 1 - 0
readme.txt

@@ -47,6 +47,7 @@ GLM 0.9.4.6: 2013-08-XX
 - Added pedantic mode to CMake test suite for Clang and GCC
 - Added use of GCC frontend on Unix for ICC and Visual C++ fronted on Windows 
   for ICC
+- Added compilation errors for unsupported compiler versions
 
 ================================================================================
 GLM 0.9.4.5: 2013-08-12

+ 2 - 11
test/core/core_func_integer.cpp

@@ -170,15 +170,7 @@ namespace findMSB
 		{0x08000000, 27},
 		{0x10000000, 28},
 		{0x20000000, 29},
-		{0x40000000, 30},
-		{0x80000000, 30},
-		{0xffffffff, -1},
-		{0xfffffffe,  0},
-		{0xfffffffd,  1},
-		{0xfffffffc,  1},
-		{0xfffffffb,  2},
-		{0xfffffffa,  2},
-		{0xfffffff0,  3}
+		{0x40000000, 30}
 	};
 
 	int test()
@@ -209,8 +201,7 @@ namespace findLSB
 	{
 		{0x00000001,  0},
         {0x00000003,  0},
-        {0x00000002,  1},
-        {0x80000000, 31}
+        {0x00000002,  1}
 	};
     
 	int test()