]> git.saurik.com Git - apple/libc.git/blobdiff - stdio/FreeBSD/vfprintf.c
Libc-1439.100.3.tar.gz
[apple/libc.git] / stdio / FreeBSD / vfprintf.c
index 2e707ef2417134c0a51b9d902cf058dfb120c8e6..cf5104506df93638cee04ff3458c85d897143436 100644 (file)
  * SUCH DAMAGE.
  */
 
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wint-conversion"
+
+#include <TargetConditionals.h>
+#if !TARGET_OS_DRIVERKIT
+#define OS_CRASH_ENABLE_EXPERIMENTAL_LIBTRACE 1
+#endif
+
 #if defined(LIBC_SCCS) && !defined(lint)
 static char sccsid[] = "@(#)vfprintf.c 8.1 (Berkeley) 6/4/93";
 #endif /* LIBC_SCCS and not lint */
@@ -868,7 +876,11 @@ fp_common:
                                static_format_checked = __printf_is_memory_read_only((void*)fmt0, strlen(fmt0));
                        }
                        if (!static_format_checked) {
-                               os_crash("%n used in a non-immutable format string");
+#if OS_CRASH_ENABLE_EXPERIMENTAL_LIBTRACE
+                               os_crash("%%n used in a non-immutable format string: %s", fmt0);
+#else
+                               os_crash("%%n used in a non-immutable format string");
+#endif
                        }
 #endif // ALLOW_DYNAMIC_PERCENT_N
 
@@ -1446,4 +1458,4 @@ error:
        return (ret < 0 || ret >= INT_MAX) ? -1 : (int)ret;
        /* NOTREACHED */
 }
-
+#pragma clang diagnostic pop