diff --git a/Marlin/language.h b/Marlin/language.h
index e1e3d48cbe62a4b63f04997ec668e8832cb8f0d3..e0fb3d9f2e3edf2c46a90f32f430b77ce123be42 100644
--- a/Marlin/language.h
+++ b/Marlin/language.h
@@ -3,8 +3,7 @@
 
 #include "Configuration.h"
 
-#define LANGUAGE_CONCAT(M)       #M
-#define GENERATE_LANGUAGE_INCLUDE(M)  LANGUAGE_CONCAT(language_##M.h)
+#define GENERATE_LANGUAGE_INCLUDE(M)  STRINGIFY_(language_##M.h)
 
 
 // NOTE: IF YOU CHANGE LANGUAGE FILES OR MERGE A FILE WITH CHANGES
@@ -88,10 +87,6 @@
 #endif
 
 
-#define STRINGIFY_(n) #n
-#define STRINGIFY(n) STRINGIFY_(n)
-
-
 // Common LCD messages
 
   /* nothing here yet */
diff --git a/Marlin/macros.h b/Marlin/macros.h
index fe07b1883be4253ad41aa2daec3df21960394f02..f3c96de898fe07e5eb87e54a1a85d1562072e1f6 100644
--- a/Marlin/macros.h
+++ b/Marlin/macros.h
@@ -1,6 +1,10 @@
 #ifndef MACROS_H
 #define MACROS_H
 
+// Macros to make a string from a macro
+#define STRINGIFY_(n) #n
+#define STRINGIFY(n) STRINGIFY_(n)
+
 // Macros for bit masks
 #define TEST(n,b) (((n)&_BV(b))!=0)
 #define SBI(n,b) (n |= _BV(b))