diff --git a/src/tool.h b/src/tool.h
index 35b05f04188cda6393a4c35e78bf199204a3f0d1..401bb1f53a16f4d0a6ef688814f8b50799ebeb57 100644
--- a/src/tool.h
+++ b/src/tool.h
@@ -49,17 +49,22 @@ struct ToolGroupCap
 	}
 };
 
+
+// CLANG SUCKS DONKEY BALLS
+typedef std::map<std::string, struct ToolGroupCap> ToolGCMap;
+
 struct ToolCapabilities
 {
 	float full_punch_interval;
 	int max_drop_level;
-	std::map<std::string, ToolGroupCap> groupcaps;
+	// CLANG SUCKS DONKEY BALLS
+	ToolGCMap groupcaps;
 
 	ToolCapabilities(
 			float full_punch_interval_=1.4,
 			int max_drop_level_=1,
-			std::map<std::string, ToolGroupCap> groupcaps_ =
-					std::map<std::string, ToolGroupCap>()
+			// CLANG SUCKS DONKEY BALLS
+			ToolGCMap groupcaps_=ToolGCMap()
 	):
 		full_punch_interval(full_punch_interval_),
 		max_drop_level(max_drop_level_),