]> gitweb.factorcode.org Git - factor.git/blobdiff - vm/debug.hpp
Put brackets around ipv6 addresses in `inet6 present`
[factor.git] / vm / debug.hpp
index 3a52431e009231d3578f45917be6392dcb9354b1..3c56f818aac72f2ce73fced391e78a1f01a90928 100644 (file)
@@ -2,15 +2,20 @@ namespace factor {
 
 extern bool factor_print_p;
 
-}
-
 #ifdef FACTOR_DEBUG
 
+// To chop the directory path of the __FILE__ macro.
+inline const char* abbrev_path(const char* path) {
+  const char* p1 = strrchr(path, '\\');
+  const char* p2 = strrchr(path, '/');
+  return (p1 > p2 ? p1 : p2) + 1;
+}
+
 #define FACTOR_PRINT(x)                                          \
   do {                                                           \
     if (factor_print_p) {                                        \
       std::cerr                                                  \
-          << std::setw(28) << std::left << __FILE__              \
+          << std::setw(16) << std::left << abbrev_path(__FILE__) \
           << " " << std::setw(4) << std::right << __LINE__       \
           << " " << std::setw(20) << std::left << __FUNCTION__   \
           << " " << x                                            \
@@ -23,3 +28,5 @@ extern bool factor_print_p;
 #define FACTOR_PRINT(fmt, ...) ((void)0)
 #define FACTOR_PRINT_MARK ((void)0)
 #endif
+
+}