$OpenBSD: patch-src_lib_libast_string_tokscan_c,v 1.1 2017/08/11 12:35:48 sthen Exp $

From libast beta repo, via FreeBSD.

https://github.com/att/ast/blob/beta/src/lib/libast/hash/hashalloc.c
https://github.com/att/ast/blob/beta/src/lib/libast/string/tokscan.c

Index: src/lib/libast/string/tokscan.c
--- src/lib/libast/string/tokscan.c.orig
+++ src/lib/libast/string/tokscan.c
@@ -233,7 +233,16 @@ tokscan(register char* s, char** nxt, const char* fmt,
 			prv_f = f;
 			f = va_arg(ap, char*);
 			va_copy(prv_ap, ap);
+#if __clang__ && __SIZEOF_POINTER__ == 4
+			{
+				va_list         np;
+
+				np = va_listval(va_arg(ap, va_listarg));
+				va_copy(ap, np);
+			}
+#else
 			va_copy(ap, va_listval(va_arg(ap, va_listarg)));
+#endif
 			continue;
 		case 'c':
 			p_char = va_arg(ap, char*);
