<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div class="">Heh, it would be nice to catch this. You're collecting a bunch of arguments in an Array, and then passing that array straight on as a <i class="">single</i>&nbsp;argument itself, which means it gets passed as either an NSArray or a pointer (not sure which). Use 'init(format:arguments:)' instead.</div><div class=""><br class=""></div><div class="">Jordan</div><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On Nov 14, 2017, at 17:19, Rick Mann via swift-users &lt;<a href="mailto:swift-users@swift.org" class="">swift-users@swift.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">I've had a long-working `debugLog()` method that looks like this:<br class=""><br class="">```<br class="">func<br class="">debugLog&lt;T&gt;(_ inMsg: T, file inFile : String = #file, line inLine : Int = #line)<br class="">{<br class=""><span class="Apple-tab-span" style="white-space:pre">        </span>let file = (inFile as NSString).lastPathComponent<br class=""><span class="Apple-tab-span" style="white-space:pre">        </span>let s = "\(file):\(inLine) &nbsp;&nbsp;&nbsp;\(inMsg)"<br class=""><span class="Apple-tab-span" style="white-space:pre">        </span>print(s)<br class="">}<br class="">```<br class=""><br class="">I wanted to add a version that works like `String(format:)`:<br class=""><br class="">```<br class="">func<br class="">debugLog(format inFormat: String, file inFile : String = #file, line inLine : Int = #line, _ inArgs: CVarArg...)<br class="">{<br class=""><span class="Apple-tab-span" style="white-space:pre">        </span>let s = String(format: inFormat, inArgs)<br class=""><span class="Apple-tab-span" style="white-space:pre">        </span>debugLog(s, file: inFile, line: inLine)<br class="">}<br class=""><br class="">```<br class=""><br class="">While this compiles and executes, all of the values are zero for this example:<br class=""><br class="">```<br class="">let xc = CGFloat(1.0)<br class="">let yc = CGFloat(0.0)<br class="">let len = CGFloat(282.1364917907643)<br class=""><br class="">debugLog(format: "Pixel %f, %f length too far %f", xc, yc, len)<br class="">```<br class=""><br class="">Output:<br class=""><br class="">```<br class="">FisheyeImageRenderer.swift:108 &nbsp;&nbsp;&nbsp;Pixel 0.000000, 0.000000 length too far 0.000000<br class="">```<br class=""><br class="">Something is being misinterpreted in the passing of `inArgs: CVarArg...`<br class=""><br class="">TIA,<br class=""><br class="">-- <br class="">Rick Mann<br class=""><a href="mailto:rmann@latencyzero.com" class="">rmann@latencyzero.com</a><br class=""><br class=""><br class=""><br class="">_______________________________________________<br class="">swift-users mailing list<br class="">swift-users@swift.org<br class="">https://lists.swift.org/mailman/listinfo/swift-users<br class=""></div></div></blockquote></div><br class=""></body></html>