0156-duff2.c - scc - simple c99 compiler (HTM) git clone git://git.simple-cc.org/scc (DIR) Log (DIR) Files (DIR) Refs (DIR) Submodules (DIR) README (DIR) LICENSE --- 0156-duff2.c (942B) --- 1 /* 2 * Disgusting, no? But it compiles and runs just fine. I feel a 3 * combination of pride and revulsion at this discovery. If no one's 4 * thought of it before, I think I'll name it after myself. It amazes 5 * me that after 10 years of writing C there are still little corners 6 * that I haven't explored fully. 7 * - Tom Duff 8 */ 9 send(to, from, count) 10 register short *to, *from; 11 register count; 12 { 13 register n=(count+7)/8; 14 switch(count%8){ 15 case 0: do{*to = *from++; 16 case 7: *to = *from++; 17 case 6: *to = *from++; 18 case 5: *to = *from++; 19 case 4: *to = *from++; 20 case 3: *to = *from++; 21 case 2: *to = *from++; 22 case 1: *to = *from++; 23 }while(--n>0); 24 } 25 } 26 27 int 28 main() 29 { 30 short a, b[40]; 31 32 send(&a, b, 40); 33 34 return (a == b[39]) ? 0 : 1; 35 }