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=-3.1 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 28482 invoked from network); 6 Oct 2021 13:49:31 -0000 Received: from mother.openwall.net (195.42.179.200) by inbox.vuxu.org with ESMTPUTF8; 6 Oct 2021 13:49:31 -0000 Received: (qmail 6121 invoked by uid 550); 6 Oct 2021 13:49:29 -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 6091 invoked from network); 6 Oct 2021 13:49:28 -0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Xmj4xydUYHyLFgqjSghM9gFDiIat0vPyIA+h6bb8oqwh95rv9YZ7qa2d68114yHzg6zsvcJ6dVevltAaUJxcUBBvGvOuM1t074LSeFyHO3GpHjfCsTW6mV6U/IlwZrWQBhR7vK3Tt0J8c1qvkKYANI94zFyHtWTmEDH3TQ6lCJVAMjzjtKw8fDzE1Thhb5heSiYxwne3yN/1uP/Obeukv6HAcq86fKwKkEnhGi8SWqnWfsuig62L1+PpRzifhSS69W77AoM61mOxnewrjJBCqA3oymgBdUdyazKsL5qZCUAUx8FZQZX1k+BU8sBQmHkxV4koStDfv+/g9Rn8Kw+lFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=DeEmO7+UM9a6C+TnnPAFDQCkb6vFXlZd7NK5WOtCHIw=; b=kCZs7GZlcVnQklp6WtzlBJXnXmSfzA5yzsRvkl+730WEoaOP7D+5Etv47OlIrhhv/DbnViutIP3e/QUf6nPs7cT1O4l6o17tsdCH04a46HW4Dx91c93VOO8JaqSpJvqT5j5UFfeNjdmgnQkZYyIwG8DIVqCydSgrDeNUgFfvDZLC7Hc3sQ9tLqGlQ8VCYybbDEETkhUM01XpfMpcIHprbVYPWqiZ8FqzFmIIIvsTK2n0PqgT3pvbV6JDlZLPqqXTuvd+DGyRn879g2K/UIELwwjdqrRv3fMcyfGd0ddpuW06Xuxg8yeSE1af35fACg5zB7f2Ip7VAA+cQRmk/K5Q1w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=trust-in-soft.com; dmarc=pass action=none header.from=trust-in-soft.com; dkim=pass header.d=trust-in-soft.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=trust-in-soft.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DeEmO7+UM9a6C+TnnPAFDQCkb6vFXlZd7NK5WOtCHIw=; b=KIEu1y6zF/0OP2kyKj9fXMsrmPjxiypn2cGQEtbEPLIrInNrLtDfWx6vNM1cIfAm1/V3baKBvWw497skmZbf/XpPlI78Z3Fb/+nH/Qr7Z3tFUOTLrJHVCEoxzVz0CILlDUXI6pl3EuKsErJn2ptHh62Wb//Mo9jP9MVQwYrvpblEtjRE3pi49Lzjcrw5N4Hsq7dVFLTStzDUj4Q5B+npCCpkW88glXJTew/9c9vbATmAcKoeUiZ3jFLh0UbleLnsRzYMFxTlo89JSHj43bsSuc1XXOjNRktqOZXgu+wwEUt8MsQKsysZe6DLecm3ceqSUOg0J50Ravb0Gg/cnxzkHA== From: Pascal Cuoq To: "musl@lists.openwall.com" Thread-Topic: STRUCT _IO_FILE { char __x; }; as the poor C programmer's abstract struct Thread-Index: AQHXurU6Qa0nrcFVDUSi3pFUI+gFNg== Date: Wed, 6 Oct 2021 13:49:16 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: suggested_attachment_session_id: cfce478a-5a41-5a8a-2ae7-384a8a1cd1de authentication-results: lists.openwall.com; dkim=none (message not signed) header.d=none;lists.openwall.com; dmarc=none action=none header.from=trust-in-soft.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 31b3f71b-5f21-4a6a-16f3-08d988d016bb x-ms-traffictypediagnostic: PR1P264MB1709: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7219; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 4fxpv6JMI7/Cl4Pjrk4kL+T1T/zqtLnoAkZWQ78rva9tw2/21Q2t2jULPXCdtCszNSk+o2+uRXIeDlY3Ui3JoV5QR5jMrghEFj2t2/l+FdsHLEwrmoc15762Y3osZrju2oK8kfxAeRNZCZ9Xxt9L9fSW9TsOCnslpIoWlkBQfYOd68yU7oqkBS+5d42vqDlwhMd6PCO8UYkXeVrBu/WNryB7Z2JpdFZwTNcYCSYeRzCGQ6FM4HbyJM9seXE/Sn0CnkVxvVsG8a0lDojotMTUH9vOgxtIN31ydv6zRjJwlDa2qARTAnDbvqQ0E9vjvZV+341iooJZJAGy61uuDGtEWs8mB61RH9jgg/7dLZRwZL58n+OKOaFTLI31DyvCbbEg3RGX2EPJtw899jbf2fXfQWs8LjQwjS57xcE25wBe7euXhbH+3z7HsYwZ0hr6LQSj8c494runJGoum+i2nmNzCgzLoTFW78ErCMDazFaRDJbAuq6YB2JemGQZ2DPRxitzgL3kdrbzuF48hxEItxPzcIJfX1dXAhDVVN4B2oEBlTutORoUd3TQxn64xa+ISWA0K5/e+/Bfcu+1DFV6AgIYp7zcw7Yok2bzohP6qdADFyE2TnIcYFFC0R0gjoSWf/sSnqKD/FMavhTp6Uor/VD/5yIPp0QF4lW4brgy/nXl1IQiPIghVqqBxx0M7KvveKpWMJYTRTlR/H7RbBIpsu3Tqd7X31QwZ+RYWiM0JPbxzULx5URaYz0g3GZkQP5k4jGSTfRRQ7rnLcmM9gzOiDNYmZF8WZ5sNMZcvJzudY6lQnE= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PR0P264MB0794.FRAP264.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(396003)(366004)(136003)(376002)(346002)(39840400004)(66556008)(66476007)(38100700002)(64756008)(66446008)(52536014)(966005)(508600001)(91956017)(38070700005)(76116006)(186003)(26005)(5660300002)(66946007)(316002)(6506007)(6916009)(55016002)(8936002)(33656002)(7696005)(8676002)(9686003)(2906002)(122000001)(71200400001)(86362001)(83380400001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?Windows-1252?Q?/GD8W+gyvqq64OK4GoPdHU0F1fy94/T/wdrUgWrrcJcGAtqArvktkFfg?= =?Windows-1252?Q?c0n1UgFypOkoTKFqzTSIvENT0Cf/psP29U+519TC2KMp95X/qa+6Mh82?= =?Windows-1252?Q?FVHyR87j8ZWZrVhLLYiorfnw8OIXhGH/WGOWwU1+KO00VPpn4er2GLbR?= =?Windows-1252?Q?PI80X2PT4M0buyR7T8aIZ3tMwXn4rcUWLUzky2U5sqbdglcUQZQllS3A?= =?Windows-1252?Q?dgH0rD6HFLlrsHhwO44l/beR1g0fbygbDZazFeIwwBfoOG0JKsgXJ6Xv?= =?Windows-1252?Q?QW41INqocFJKn+4tnQymGbAVa0clmfsad4M1VfUTUZEb6BKR9y/6quzd?= =?Windows-1252?Q?uSeZwB2v/ErxozAURxGCF0/+naF7WSOo4vD19Mev6S/YLQMLjLav2Fk6?= =?Windows-1252?Q?37vD96OGdpRkvhBfv0mlU3yfdblKhHTgwc22Ymdu4ZnNxTk1qhcFHObP?= =?Windows-1252?Q?tQy9O/O1CcWgp7mGK2rfSlvCnoZIdChtAEOBAYlsWrbq0w27IjaHj6/2?= =?Windows-1252?Q?KCMYJbj5Q1c92MD1qbVpIc8+w3Moh7TWWmRcNXfrqTOFSyR8WwaCC7g/?= =?Windows-1252?Q?b09dCl5Nz3ZguvpO4EHoVA3L5ZV+NyIZQMjB6undakI6wx5Kt+rprxcE?= =?Windows-1252?Q?ih9g00pkY26T64Sc7cpNwgNLomoToIjOiTdpkARAJ3VeVlxFEIYiWeFX?= =?Windows-1252?Q?tZ8zkD9J51sbPAV7aignU8kds61ViWqcdKIWhjLy42VJ6OiVChJGcG0y?= =?Windows-1252?Q?ILmsVL3A9K1Ee85Rr+QF9GGA74XLfgfaLhjJz0tmLroXkjl0mXo4pVaA?= =?Windows-1252?Q?tTNIOrC4NutSc46IJAQZU9LTFfnrCHEBgVGLp2kGSh90xZqMmtRxjltq?= =?Windows-1252?Q?YcSlEyNyd3lkLZFZXVhQrOV7gSGKwUEsNBC8BZUN6nfev3IdD2etLKhu?= =?Windows-1252?Q?iDb/GGq4yatvDrnAxTuKzE0MbcOQRB4JcZb3AOP2LJvy2ePPaGZJQ7bz?= =?Windows-1252?Q?z/4YKafH7jac4a05Y9pcY5v4eslrSno6ICdXAvMZbs82jIB8bRbd8KID?= =?Windows-1252?Q?NW9ASu8Bvuoo23XkVFVoIooqNFduSG2c48eXp4ryVXc+sK/tiHczlKPQ?= =?Windows-1252?Q?Gftgwg11KpGaLxoj8WNFa9A+FeOJm8tImvfMvTGR0HBjAnzqTLCUQwQy?= =?Windows-1252?Q?gTVKL2h8CNLUJ6WCcbRjdIQQmQJc43F2wVn9vl7NrE4hWrckHCraGyjQ?= =?Windows-1252?Q?EbaJxew8fnoDGhpbpomU/d1tTCqRLfqBWh3psq9AA0GPm9my+Bgk9xV+?= =?Windows-1252?Q?XEGatL8b/JxLxCRN9Q13o9gC2s92X/QEXBT/58KTDy2KbVCR553jDTyb?= =?Windows-1252?Q?HE/ILA6oZBLvyzTbEUBxL1e0IHuopiqYmJY=3D?= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: trust-in-soft.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PR0P264MB0794.FRAP264.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 31b3f71b-5f21-4a6a-16f3-08d988d016bb X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Oct 2021 13:49:16.4831 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: c0bee27e-6b2c-476e-88fe-f5a620006e7f X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: Vza6OLbRsDiPxnA3IZmTWJ7TQHc6TVw/H9MR0xDWhO/8sSUDyYJRc8sv8EWvAMPDLC0gbUS66iVBb51bv8kEuw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR1P264MB1709 Subject: [musl] STRUCT _IO_FILE { char __x; }; as the poor C programmer's abstract struct Hello,=0A= =0A= The file stdio.h contains:=0A= =0A= #if __STDC_VERSION__ < 201112L=0A= #define __NEED_struct__IO_FILE=0A= #endif=0A= =85=0A= #include =0A= =0A= And the file alltypes.h is generated from alltypes.h.in which contains:=0A= =0A= STRUCT _IO_FILE { char __x; };=0A= TYPEDEF struct _IO_FILE FILE;=0A= =0A= This means that when the compiler defines __STDC_VERSION__ to less than 201= 112L, a bogus definition for the type FILE and for the prototypes of functi= ons that access values of this type can exist in files outside musl, alongs= ide the real definition from stdio_impl.h which exists in files inside musl= :=0A= =0A= struct _IO_FILE {=0A= unsigned flags;=0A= unsigned char *rpos, *rend;=0A= int (*close)(FILE *);=0A= =85=0A= =0A= This is at least a minor annoyance when trying to do source-level verificat= ions on a mix of source files including some files that implement musl toge= ther with some files that use musl from the outside.=0A= =0A= Was it only in C11 that it became possible to avoid this ugly hack?=0A= =0A= (We stumbled on this because we happened to be doing the pre-processing wit= h -std=3Dc99, and I think it should be no problem to change it to be done w= ith -std=3Dc11, but I'm surprised nevertheless because I don't see which it= em in https://port70.net/~nsz/c/c11/n1570.html#Forewordp6 corresponds to th= is change between C99 and C11. Could the test be changed to =93__STDC_VERSI= ON__ < 199901L=94?)=0A= =0A= Pascal=0A= =0A= =0A=