Move Q_FUNC_INFO to qcompilerdetection.h
authorThiago Macieira <thiago.macieira@intel.com>
Wed, 28 Mar 2012 19:40:28 +0000 (16:40 -0300)
committerQt by Nokia <qt-info@nokia.com>
Mon, 23 Apr 2012 17:20:19 +0000 (19:20 +0200)
Change-Id: Ibc63913f070febe561890e98ef079ca883d9bfc9
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
src/corelib/global/qcompilerdetection.h
src/corelib/global/qglobal.h

index e1563b0..2b6c816 100644 (file)
@@ -91,6 +91,7 @@
 #  define Q_OUTOFLINE_TEMPLATE inline
 #  define Q_NO_TEMPLATE_FRIENDS
 #  define Q_COMPILER_MANGLES_RETURN_TYPE
+#  define Q_FUNC_INFO __FUNCSIG__
 #  define Q_ALIGNOF(type) __alignof(type)
 #  define Q_DECL_ALIGN(n) __declspec(align(n))
 #  define Q_ASSUME(expr) __assume(expr)
 #    define Q_DECL_HIDDEN     __attribute__((visibility("hidden")))
 #  endif
 
+#  define Q_FUNC_INFO       __PRETTY_FUNCTION__
 #  define Q_ALIGNOF(type)   __alignof__(type)
 #  define Q_TYPEOF(expr)    __typeof__(expr)
 #  define Q_DECL_DEPRECATED __attribute__ ((__deprecated__))
    (see __DCC__ above). This one is for C mode files (__EDG is not defined) */
 #elif defined(_DIAB_TOOL)
 #  define Q_CC_DIAB
+#  define Q_FUNC_INFO       __PRETTY_FUNCTION__
 
 /* Never tested! */
 #elif defined(__HIGHC__)
 #  if defined(__HP_aCC) || __cplusplus >= 199707L
 #    define Q_NO_TEMPLATE_FRIENDS
 #    define Q_CC_HPACC
+#    define Q_FUNC_INFO         __PRETTY_FUNCTION__
 #    if __HP_aCC-0 < 060000
 #      define QT_NO_TEMPLATE_TEMPLATE_PARAMETERS
 #      define Q_DECL_EXPORT     __declspec(dllexport)
 #ifndef Q_DECL_HIDDEN
 #  define Q_DECL_HIDDEN
 #endif
+#ifndef Q_FUNC_INFO
+#  if defined(Q_OS_SOLARIS) || defined(Q_CC_XLC)
+#    define Q_FUNC_INFO __FILE__ "(line number unavailable)"
+#  else
+#    define Q_FUNC_INFO __FILE__ ":" QT_STRINGIFY(__LINE__)
+#  endif
+#endif
 
 /*
    Workaround for static const members on MSVC++.
index 1cf3838..114857b 100644 (file)
@@ -829,19 +829,6 @@ Q_CORE_EXPORT void qBadAlloc();
 template <typename T>
 inline T *q_check_ptr(T *p) { Q_CHECK_PTR(p); return p; }
 
-#if (defined(Q_CC_GNU) && !defined(Q_OS_SOLARIS)) || defined(Q_CC_HPACC) || defined(Q_CC_DIAB)
-#  define Q_FUNC_INFO __PRETTY_FUNCTION__
-#elif defined(_MSC_VER)
-#  define Q_FUNC_INFO __FUNCSIG__
-#else
-#   if defined(Q_OS_SOLARIS) || defined(Q_CC_XLC)
-#      define Q_FUNC_INFO __FILE__ "(line number unavailable)"
-#   else
-#       define Q_FUNC_INFO __FILE__ ":" QT_STRINGIFY(__LINE__)
-#   endif
-#endif
-
-
 typedef void (*QFunctionPointer)();
 
 #if !defined(Q_UNIMPLEMENTED)