+ * problem.
+ *
+ * Possible values are:
+ * 0 -- Never show signal-related output. There is absolutely no
+ * run-time overhead from FSHOW_SIGNAL in this case.
+ *
+ * 1 -- (recommended)
+ * Show signal-related output only if selected at run-time
+ * (otherwise almost no run-time overhead).
+ *
+ * 2 -- Unconditionally show signal-related output.
+ * Very significant overhead.
+ *
+ * For reasons of tradition, we default to 0 on POSIX and 1 on Windows
+ * through :SB-QSHOW.
+ *
+ * With option 1, set up environment variable SBCL_DYNDEBUG to include
+ * "fshow" or "fshow_signal" before starting SBCL to enable output.
+ *
+ * There is no particular advantage to option 2 except that you do not
+ * need to set environment variables in this case.
+ */
+#ifdef LISP_FEATURE_SB_QSHOW
+# define QSHOW_SIGNALS 1
+#else
+# define QSHOW_SIGNALS 0
+#endif
+
+/* Enable low-level debugging output, if not zero. Defaults to enabled
+ * if QSHOW_SIGNALS, disabled otherwise. Change it to 1 or 2 if you want
+ * low-level debugging output but not the whole signal mess. */
+#define QSHOW QSHOW_SIGNALS
+
+/*
+ * Configuration options end here -- the following defines do not
+ * generally need customization.
+ */
+
+#define odxprint(topic, fmt, ...) \
+ do \
+ if (dyndebug_config.dyndebug_##topic) \
+ odxprint_fun(fmt "\n", ##__VA_ARGS__); \
+ while (0)