Hi, I want to shut up drawterm compile warnings without resorting to -Wno. I'll rationalize this with reducing function sizes by bytes, "improving readability", and micro optimizations for kencc. Here are some basic transformations on strchr and runestrchr. It reduces 9front function byte sizes on the arches I tested (amd64 0x4f->0x43, arm 0x50->0x40, power 0x68->0x5c). It shuts up a gcc warning about runestrchr while(c1 = *s++) (when compiled without -Wno-parentheses) Attached are patches for 9front and drawterm. Below are the full functions for criticism. Thanks, Amavect char* strchr(char *s, int c) { char r; if(c == 0) while(*s++) ; else while((r = *s++) != c) if(r == 0) return 0; return s-1; } Rune* runestrchr(Rune *s, Rune c) { Rune r; if(c == 0) while(*s++) ; else while((r = *s++) != c) if(r == 0) return 0; return s-1; } unit test: #include #include void main(void) { char *v = "foo bar ss"; char *e; Rune *c = L"foo βαρ ß"; Rune *t; e = strchr(v, L'z'); assert(e == nil); e = strchr(v, L'a'); assert(e == v+5); e = strchr(v, 0); assert(e == v+10); t = runestrchr(c, L'z'); assert(t == nil); t = runestrchr(c, L'α'); assert(t == c+5); t = runestrchr(c, 0); assert(t == c+9); }