diff --git a/src/libs/glsl/glsl-lib.pri b/src/libs/glsl/glsl-lib.pri
index 7e4bcf77362e1f045d9447a721a19458aa1e8820..daec79e708528a028b4086338bda6ec1fb413867 100644
--- a/src/libs/glsl/glsl-lib.pri
+++ b/src/libs/glsl/glsl-lib.pri
@@ -1,9 +1,9 @@
 HEADERS += $$PWD/glsl.h $$PWD/glsllexer.h $$PWD/glslparser.h $$PWD/glslparsertable_p.h $$PWD/glslast.h \
     $$PWD/glslastvisitor.h $$PWD/glslengine.h $$PWD/glslmemorypool.h $$PWD/glslastdump.h \
-    $$PWD/glslsemantic.h $$PWD/glsltypes.h
+    $$PWD/glslsemantic.h $$PWD/glsltype.h $$PWD/glsltypes.h
 SOURCES += $$PWD/glslkeywords.cpp $$PWD/glslparser.cpp $$PWD/glslparsertable.cpp \
     $$PWD/glsllexer.cpp $$PWD/glslast.cpp \
     $$PWD/glslastvisitor.cpp $$PWD/glslengine.cpp $$PWD/glslmemorypool.cpp $$PWD/glslastdump.cpp \
-    $$PWD/glslsemantic.cpp $$PWD/glsltypes.cpp
+    $$PWD/glslsemantic.cpp $$PWD/glsltype.cpp $$PWD/glsltypes.cpp
 
 OTHER_FILES = $$PWD/glsl.g
diff --git a/src/libs/glsl/glsltype.cpp b/src/libs/glsl/glsltype.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..6f0d0afcc94c322023ced2e241251ad4423acf1b
--- /dev/null
+++ b/src/libs/glsl/glsltype.cpp
@@ -0,0 +1,37 @@
+/**************************************************************************
+**
+** This file is part of Qt Creator
+**
+** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+**
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** Commercial Usage
+**
+** Licensees holding valid Qt Commercial licenses may use this file in
+** accordance with the Qt Commercial License Agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Nokia.
+**
+** GNU Lesser General Public License Usage
+**
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file.  Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at http://qt.nokia.com/contact.
+**
+**************************************************************************/
+
+#include "glsltype.h"
+
+using namespace GLSL;
+
+Type::~Type()
+{
+}
+
diff --git a/src/libs/glsl/glsltype.h b/src/libs/glsl/glsltype.h
new file mode 100644
index 0000000000000000000000000000000000000000..be42b19c003a9e40e5939d940dedbc1ce4d3b903
--- /dev/null
+++ b/src/libs/glsl/glsltype.h
@@ -0,0 +1,58 @@
+/**************************************************************************
+**
+** This file is part of Qt Creator
+**
+** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+**
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** Commercial Usage
+**
+** Licensees holding valid Qt Commercial licenses may use this file in
+** accordance with the Qt Commercial License Agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Nokia.
+**
+** GNU Lesser General Public License Usage
+**
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file.  Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at http://qt.nokia.com/contact.
+**
+**************************************************************************/
+#ifndef GLSLTYPE_H
+#define GLSLTYPE_H
+
+#include "glsl.h"
+
+namespace GLSL {
+
+class GLSL_EXPORT Type
+{
+public:
+    virtual ~Type();
+
+    virtual const UndefinedType *asUndefinedType() const { return 0; }
+    virtual const VoidType *asVoidType() const { return 0; }
+    virtual const BoolType *asBoolType() const { return 0; }
+    virtual const IntType *asIntType() const { return 0; }
+    virtual const UIntType *asUIntType() const { return 0; }
+    virtual const FloatType *asFloatType() const { return 0; }
+    virtual const DoubleType *asDoubleType() const { return 0; }
+    virtual const OpaqueType *asOpaqueType() const { return 0; }
+    virtual const VectorType *asVectorType() const { return 0; }
+    virtual const MatrixType *asMatrixType() const { return 0; }
+
+    virtual bool isEqualTo(const Type *other) const = 0;
+    virtual bool isLessThan(const Type *other) const = 0;
+};
+
+} // end of namespace GLSL
+
+#endif // GLSLTYPE_H
diff --git a/src/libs/glsl/glsltypes.h b/src/libs/glsl/glsltypes.h
index c7766fb4388f27475c27281d5096fab86dfb2604..624493485af3ecf944f0904902263697462486e4 100644
--- a/src/libs/glsl/glsltypes.h
+++ b/src/libs/glsl/glsltypes.h
@@ -29,30 +29,10 @@
 #ifndef GLSLTYPES_H
 #define GLSLTYPES_H
 
-#include "glsl.h"
+#include "glsltype.h"
 
 namespace GLSL {
 
-class GLSL_EXPORT Type
-{
-public:
-    virtual ~Type() {}
-
-    virtual const UndefinedType *asUndefinedType() const { return 0; }
-    virtual const VoidType *asVoidType() const { return 0; }
-    virtual const BoolType *asBoolType() const { return 0; }
-    virtual const IntType *asIntType() const { return 0; }
-    virtual const UIntType *asUIntType() const { return 0; }
-    virtual const FloatType *asFloatType() const { return 0; }
-    virtual const DoubleType *asDoubleType() const { return 0; }
-    virtual const OpaqueType *asOpaqueType() const { return 0; }
-    virtual const VectorType *asVectorType() const { return 0; }
-    virtual const MatrixType *asMatrixType() const { return 0; }
-
-    virtual bool isEqualTo(const Type *other) const = 0;
-    virtual bool isLessThan(const Type *other) const = 0;
-};
-
 class GLSL_EXPORT OpaqueType: public Type
 {
 public: