From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2 autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 29113 invoked from network); 12 Apr 2023 21:37:01 -0000 Received: from second.openwall.net (193.110.157.125) by inbox.vuxu.org with ESMTPUTF8; 12 Apr 2023 21:37:01 -0000 Received: (qmail 11910 invoked by uid 550); 12 Apr 2023 21:36:56 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 10159 invoked from network); 12 Apr 2023 21:35:44 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=web.de; s=s29768273; t=1681335332; i=wine.dev@web.de; bh=W2KVm0eR/xqt58Fln1bCwFEqDEdObYez1vWQpRoObC8=; h=X-UI-Sender-Class:From:To:Subject:Date; b=J9/hhwmfhQfoP2RmxZLIP7oBYBR6jVp0wG2Lql0BEgT2oAypEvs54fKaAsS98HdKI pDe1h909ZQZ6gGRxAHK9s70KPbJz1yPDJpNSR7UIitwV3WpZBrYTEDXJAjuH49WRdO 9raW/vkUjFGhON5UUjwx7JEGk55hTu6gPDD6zmiNVELM51f8VPQ6PssWRvvvwDtJrH NwZJLLamfX/UKFR1ZQdN+UsBAVJiFBYAhoywP2aYZ60Q/i6hgF2OWt548FMgnKXCcL y9mEfTBwdhIIcOIa1g9wS8OwseggXENBCgcrmr/klNX/OPQX76fozTViYMoG6sz7Zk kYbmiaZ5uKGbA== X-UI-Sender-Class: 814a7b36-bfc1-4dae-8640-3722d8ec6cd6 MIME-Version: 1.0 Message-ID: From: Detlef Riekenberg To: musl@lists.openwall.com Content-Type: multipart/mixed; boundary=rekceb-2fb845c6-5ed2-4cac-8b75-8242b486cef6 Date: Wed, 12 Apr 2023 23:35:32 +0200 Importance: normal Sensitivity: Normal X-Priority: 3 X-Provags-ID: V03:K1:mVLYBdle83UtfLILlavwud8r2T4IqeD0P8vbRvYOqXvx4I9kfWul1OVAa/MGmY8dVFWsc WrAEu/ry1EYDV4xavy4tLKZxfCjv4Vh9bJ0M5gZVJE/Qii9NgxTdQOPpvU0kK8q3yVAperYQGeiv AB6mM2Frxy9s7gl435I4p0fxGx22e22KeDvFqMG/K3YrtkL43PJopw3JYKbuslD8cu89w/nEqxdA RVmXth6Xilkm+tZqdm/YmIb4RuVL77RDeoThCg3GWkkj9lp4sGlN9nGNT3OQ5JVHgTHcXtZ/Td1I sQ= UI-OutboundReport: notjunk:1;M01:P0:J5nJ5cUWMcA=;SpJ3WRztKG+paqZDdjxokhq0DTg RRm3S6aGhg+4pIcS2AXnZ2pKRutgVW6GQIXdzEpN1xXUEyG+GO8g1u0pR6jP11otX/Gu8GYof M5rux52VAJSbUxkuQd5D9AH/gY9Z66yLOo6K2y8UPLKi4WNOTlhWZ3F4vumS4l1F7V+DqjM2k lI6Sd5MRrdQXcqsseROyCR3ovS+lTMdl0trEXg96nDWxsUYvxLncGSX0D4sOcCq2OHJmbrHk4 aPFDRf0bS9A2QjDF8PDqkE7+0F/SUXvyfhk+50MisFjZWBsaMS2aYlA4i9FVwsvasDPkJA968 B/4qBPd//C6p05EcuPBjel3Pk2Z2tCjq6RsNFpoWzTVjn7afOP3/Px3dvCPTcs7tEkjhDILy4 8TFZHjS5iGKbVPNL7068fuut9IKbG1W/g5jvFovoImREGzWbKCCwJ1SDHEJztaq5MOYZU5oUs XBS3GGr0MprovK3vq2MlZojJIyONvgXzKx8aGuZigUj2+FI3gAY3RnMCL9UFp0yNKg4JN1JPS i+o8nfo3l68kjz4tu8cHHb6TrKlghf3mNXX1UTHB6BvRwMMm52laNnX3sIscH3CtzrIwgIjLT bFT13bnb3In9qpBFs69pU8DhnbVxs+4OQ6i2aL9GKnN1/GOi+ZD2O/KlnWMtIBy0gVZg4Zot9 /Bf/jm+G+EcJ7ixn625gnWQ8YNn8+YNy75kbTEuqKp8xWvpSHHYLsfonFiCc8ZSzYP+zDJV/1 dXD2sVRtReAdGMZQn4IAMZWzI++MjUDSZ9damL7J1YVOPLRQFF5Y734C6kcKp/SLIAWrTyqz3 EsPJJ/HPudyUc14rxD+5G/SA== Subject: [musl] printf does not print anything (musl 1.2.3) --rekceb-2fb845c6-5ed2-4cac-8b75-8242b486cef6 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable The attached test fails with musl 1.2.3 (does not print anything): os: xubuntu 23.04 compiled with: musl-gcc -O0 -std=3Dc99 -Wall prog.c -o prog_musl-O0 gcc: 12.2.0-17ubuntu1 The programm is a tic-tac-toe game, but the source is stange: * Filesize Original: 2745 byte (includes only ) * Filesize after preprocess: with musl ~559k / with gnu libc ~571k * After preprocess, the format string is ~100kb * main() uses only one printf, and one arg has a scanf: ` int main() { while(*d) printf(fmt, arg); } ` For testing, i removed the "while(*d)", but the binary using musl still does not print anything. Compiling the original source with the same gcc and using gnu libc works and the gnu libc version with the removed "while (*d)" produces an output = of 23592 byte. ioccc page: https://www.ioccc.org/2020/carlini/index.html Also available on github: https://github.com/carlini/printf-tac-toe I tried to subscribe to the list, but i have no confirmation yet, so pleas= e cc me. =2D- Bye bye ... Detlef --rekceb-2fb845c6-5ed2-4cac-8b75-8242b486cef6 Content-Type: text/plain Content-Disposition: attachment; filename=prog.c Content-Transfer-Encoding: quoted-printable #include #define N(a) "%"#a"$hhn" #define O(a,b) "%10$"#a"d"N(b) #define U "%10$.*37$d" #define G(a) "%"#a"$s" #define H(a,b) G(a)G(b) #define T(a) a a #define s(a) T(a)T(a) #define A(a) s(a)T(a)a #define n(a) A(a)a #define D(a) n(a)A(a) #define C(a) D(a)a #define R C(C(N(12)G(12))) #define o(a,b,c) C(H(a,a))D(G(a))C(H(b,b)G(b))n(G(b))O(32,c)R #define SS O(78,55)R "\n\033[2J\n%26$s"; #define E(a,b,c,d) H(a,b)G(c)O(253,11)R G(11)O(255,11)R H(11,d)N(d)O(253,3= 5)R #define S(a,b) O(254,11)H(a,b)N(68)R G(68)O(255,68)N(12)H(12,68)G(67)N= (67) char* fmt =3D O(10,39)N(40)N(41)N(42)N(43)N(66)N(69)N(24)O(22,65)O(5,70)O(= 8,44)N( 45)N(46)N (47)N(48)N( 49)N( 50)N( 51)N(52)N(53 )O= ( 28, 54)O(5, 55) O(2, 56)O(3,57)O( 4,58 )O(13, 73= )O(4, 71 )N( 72)O (20,59 )N(60)N(61)N( 62)N (63)N (6= 4)R R E(1,2, 3,13 )E(4, 5,6,13)E(7,8,9 ,13)E(1,4 ,7= ,13)E (2,5,8, 13)E( 3,6,9,13)E(1,5, 9,13)E(3 ,5= ,7,13 )E(14,15, 16,23) E(17,18,19,23)E( 20, 21, 22= ,23)E (14,17,20,23)E(15, 18,21,23)E(16,19, 22 ,23)E( 14= , 18, 22,23)E(16,18,20, 23)R U O(255 ,38)R G ( 38)O( 25= 5,36) R H(13,23)O(255, 11)R H(11,36) O(254 ,36) R G( 36= ) O( 255,36)R S(1,14 )S(2,15)S(3, 16)S(4, 17 )S (5, 18= )S(6, 19)S(7,20)S(8, 21)S(9 ,22)H(13,23 )H(36, 67 )N= (11)R G(11)""O(255, 25 )R s(C(G(11) ))n (G( 11= ) )G( 11)N(54)R C( "aa") s(A( G(25)))T (G(25))N (6= 9)R o (14,1,26)o( 15, 2, 27)o (16,3,28 )o( 17,4, 29= )o(18 ,5,30)o(19 ,6,31)o( 20,7,32)o (21,8,33)o (2= 2 ,9, 34)n(C(U) )N( 68)R H( 36,13)G(23) N(11)R C(D( G(= 11))) D(G(11))G(68)N(68)R G(68)O(49,35)R H(13,23)G(67)N(11)R C(H(11,= 11)G( 11))A(G(11))C(H(36,36)G(36))s(G(36))O(32,58)R C(D(G(36)))A(G(3= 6))SS #define arg d+6,d+8,d+10,d+12,d+14,d+16,d+18,d+20,d+22,0,d+46,d+52,d+48,d+= 24,d\ +26,d+28,d+30,d+32,d+34,d+36,d+38,d+40,d+50,(scanf(d+126,d+4),= d+(6\ -2)+18*(1-d[2]%2)+d[4]*2),d,d+66,d+68,d+70, d+78,d+80,d+82,d+9= 0,d+\ 92,d+94,d+97,d+54,d[2],d+2,d+71,d+77,d+83,d+89,d+95,d+72,d+73,= d+74\ ,d+75,d+76,d+84,d+85,d+86,d+87,d+88,d+100,d+101,d+96,d+102,d+9= 9,d+\ 67,d+69,d+79,d+81,d+91,d+93,d+98,d+103,d+58,d+60,d+98,d+126,d+= 127,\ d+128,d+129 char d[538] =3D {1,0,10,0,10}; int main() { while(*d) printf(fmt, arg); } --rekceb-2fb845c6-5ed2-4cac-8b75-8242b486cef6--