-# define _VERBOSE_(vlvl,llvl,...) do{ if (verbosity >= vlvl) verbose(llvl, __FILE__, __LINE__, __func__, __VA_ARGS__); } while(0)
+#if defined(VERBOSE_NO_DATA)
+# define __VERBOSE__(lvl,...) do{if((lvl)<=Log_Level_Error) verbose(lvl, __FILE__, __LINE__, __func__, __VA_ARGS__)\
+ else verbose(lvl, __FILE__, __LINE__, __func__, NULL);}while(0)
+#elif defined(VERBOSE_NO_DETAILS)
+# define __VERBOSE__(lvl,...) verbose(lvl, NULL, 0, NULL, __VA_ARGS__)
+#else
+# define __VERBOSE__(lvl,...) verbose(lvl, __FILE__, __LINE__, __func__, __VA_ARGS__)
+#endif
+
+# define _VERBOSE_(vlvl,llvl,...) do{ if (verbosity >= vlvl) __VERBOSE__(llvl, __VA_ARGS__); } while(0)
+