diff --git a/src/shared/proparser/profileevaluator.h b/src/shared/proparser/profileevaluator.h
index 0031ee1d71d951452d9755defd82c7f669812ce2..5831b9b64aebc14d4eb8e6a5b4f56c64beceb1d6 100644
--- a/src/shared/proparser/profileevaluator.h
+++ b/src/shared/proparser/profileevaluator.h
@@ -116,8 +116,6 @@ private:
     friend struct ProFileOption;
 };
 
-Q_DECLARE_TYPEINFO(ProFileEvaluator::FunctionDef, Q_MOVABLE_TYPE);
-
 // This struct is from qmake, but we are not using everything.
 struct ProFileOption
 {
@@ -168,4 +166,6 @@ struct ProFileOption
 
 QT_END_NAMESPACE
 
+Q_DECLARE_TYPEINFO(ProFileEvaluator::FunctionDef, Q_MOVABLE_TYPE);
+
 #endif // PROFILEEVALUATOR_H
diff --git a/src/shared/proparser/profileparser.h b/src/shared/proparser/profileparser.h
index 3cdd1824cce0f83fd252d80e16e1e2c2f4ac8c76..e4b0385f2daad2c2d5785c123f718db85d117f23 100644
--- a/src/shared/proparser/profileparser.h
+++ b/src/shared/proparser/profileparser.h
@@ -142,11 +142,6 @@ private:
     friend class ProFileCache;
 };
 
-#if !defined(__GNUC__) || __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 3)
-Q_DECLARE_TYPEINFO(ProFileParser::BlockScope, Q_MOVABLE_TYPE);
-Q_DECLARE_TYPEINFO(ProFileParser::Context, Q_PRIMITIVE_TYPE);
-#endif
-
 class ProFileCache
 {
 public:
@@ -178,4 +173,11 @@ private:
     friend class ProFileParser;
 };
 
+QT_END_NAMESPACE
+
+#if !defined(__GNUC__) || __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 3)
+Q_DECLARE_TYPEINFO(ProFileParser::BlockScope, Q_MOVABLE_TYPE);
+Q_DECLARE_TYPEINFO(ProFileParser::Context, Q_PRIMITIVE_TYPE);
+#endif
+
 #endif // PROFILEPARSER_H