From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ej1-x62b.google.com (mail-ej1-x62b.google.com [IPv6:2a00:1450:4864:20::62b]) by sourceware.org (Postfix) with ESMTPS id 922723858C39 for ; Mon, 8 Apr 2024 09:53:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 922723858C39 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=baylibre.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 922723858C39 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::62b ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1712570035; cv=none; b=nbuJUEew7OzJbRLcbNPncS7K2AtvRyKwOl6ajWNx4+dL7EMeD4kgaWUxSm0SHPynBwKy2qrGRA5uVLM50wV8Om0QYiufBxFMVDxugGeSM+eHb27O5zm1KRCPzUxfFesDAKVdy3xJ88cPvX/ZknllCVJacc0zMp995HKkZySe5xU= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1712570035; c=relaxed/simple; bh=kSeRI8mo/qPGbme/FFgGsl0rFF+L4SCl4FhU4ZsvQ1Y=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:To:From; b=DmBudOfbHPhNKzKqfdfacu7bQm5AqgL5EJqx3nO92Mvia8cVlL8C3lzXZ+XGMkrsAJbYI16e6EOIA5dKqKxomr42LWsylZPrCtT/c7trcz1WP+z5zogeop3piFWtvuUdy5/G5RdNUJkB+QAPzOFvCZzdTL4hIVEaVdn97IdwuNQ= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-ej1-x62b.google.com with SMTP id a640c23a62f3a-a44ad785a44so495127966b.3 for ; Mon, 08 Apr 2024 02:53:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1712570031; x=1713174831; darn=gcc.gnu.org; h=in-reply-to:from:content-language:references:cc:to:subject :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=A81I6O06Kb9w03x7xklY/rmac/DwiBpRTN9Q4j5D4zE=; b=Vwl4k5D0Le2LlxhA+dntXXlEQoHM2rk2psXOJPguWEOT+E70+aG0y5xoLlJooPRwUd 10g6egRhaH11tsT7ZBJuLBWpcvN3o6te7zlTUWxhzOF0Z/hSqD4+rO3+r+miuj1DL3qN rqxkKbH6TNWApwfZpu1CMGnqrk8ym+4xFVXp5U8a97FSXNjQDNOcGJNFy0jlZxYrgap2 pQoo+rMtYu2qNIBwluxAdGCCq8JLBNNfRqFoVJq2gE/DbZOTalYKAhDF0msfFxTQhoj6 +uYpE6WWYuZZ8pckxlEqwEwjmvh7e09fZ5tzMYRvN7mKsy39tmjoR0ssiWDX8TubM9Zs HnCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1712570031; x=1713174831; h=in-reply-to:from:content-language:references:cc:to:subject :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=A81I6O06Kb9w03x7xklY/rmac/DwiBpRTN9Q4j5D4zE=; b=SxKqkcQTYmk0zb2d6pPD8mDbY7IsO5vWOqQw3frkgH91kjeXMi3SPA8YROEWIMzqkS LtHF3vijr31waWdcAXXThM+ZMdetBMIDjEQOPjd8TO/UCYGAiRsLM+j+pczwNkG/HKgo liBav/ZktE+H23puK+LLhdBvXk2ZXA08cWNQZCJ92CpcB5+JWsIKCQmAYtIbWruVs+Bo bS70s0ce2ZLGNZaOK8Imhd0mTAnwgehPHMVTelGXCImINcBIqzo5tanP+jdRB4h2vO19 ZivvAQB5JcGifwqy9HTMwsg6ryFjCSHXIA71aQ2/jmUnpHjVHOo71IhWK2FoZL36MAmy e+Lg== X-Forwarded-Encrypted: i=1; AJvYcCWt8icCd1ZnLDyZk9QwQ73nHrQq+jl0ACdKlLG2c9keXzGVqCHN7vlKwNVrPiGbOucFskIAcj7sdv5XVwG0ScKkouY6 X-Gm-Message-State: AOJu0YyHvOcKhyVPOKF2JoXpNkawbCMFfMMb5NQrrM4rYyp2pXbXuiGQ vegvaaRmkpAMoKQqRWrG+IpuFT9EgiWuZ1oZi4w6fFS6dLvVztDA8D0vNPu/2DA= X-Google-Smtp-Source: AGHT+IF7QZmdnd2K0vkmgJumngvod4dqiuWbzMF1FeY+tklgn0hfxyI+JfVFfdiqS/mCIjMnuZmbpg== X-Received: by 2002:a17:907:7d90:b0:a51:cdfd:9095 with SMTP id oz16-20020a1709077d9000b00a51cdfd9095mr2761435ejc.57.1712570031204; Mon, 08 Apr 2024 02:53:51 -0700 (PDT) Received: from ?IPV6:2001:16b8:2a21:dd00:9a6e:8a9a:eb5:f51b? (200116b82a21dd009a6e8a9a0eb5f51b.dip.versatel-1u1.de. [2001:16b8:2a21:dd00:9a6e:8a9a:eb5:f51b]) by smtp.gmail.com with ESMTPSA id en1-20020a17090728c100b00a51adace6ebsm3630541ejc.79.2024.04.08.02.53.49 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 08 Apr 2024 02:53:49 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------y30i2luhAXWgI2KUWvJposZG" Message-ID: <529f47ca-c398-4e20-a0ef-507842f989d4@baylibre.com> Date: Mon, 8 Apr 2024 11:53:48 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: =?UTF-8?Q?=5BPatch=5D_Fortran=3A_List-directed_read_-_accept_again_?= =?UTF-8?Q?tab_as_alternative_to_space_as_separator_=5BPR114304=5D_=28was=3A?= =?UTF-8?Q?_=5Bpatch=2C_libgfortran=5D_PR114304_-_=5B13/14_Regression=5D_lib?= =?UTF-8?Q?gfortran_I/O_=E2=80=93_bogus_=22Semicolon_not_allowed_as_separato?= =?UTF-8?B?ciB3aXRoIERFQ0lNQUw9J3BvaW50JyIp?= To: Jerry D , gfortran Cc: gcc-patches References: <9a848b89-ee95-44f7-8491-cbe22804edf4@gmail.com> <15a39ada-c7fc-433d-ab39-19b897a8a3e8@baylibre.com> <6a742cef-5321-4b34-a2f0-870abd1ba82a@gmail.com> Content-Language: en-US From: Tobias Burnus In-Reply-To: X-Spam-Status: No, score=-12.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This is a multi-part message in MIME format. --------------y30i2luhAXWgI2KUWvJposZG Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Jerry D wrote: > See attached updated patch. It turned rather quickly out that this patch – committed as r14-9822-g93adf88cc6744a – caused regressions. Namely, real-world code use tab(s) as separator instead of spaces. [For instance, PR114304 which contains a named-list input file from SPEC CPU 2017; that example uses tabs before the '=' sign, but the issue is more generic.] I think the ISO Fortran standard only permits spaces, but as it feels natural and is widely supported, tabs are used and should remain supported. It is not quite clear how '\r' are or should be handled, but as eat_spaces did use it, I thought I would add one testcase using them as well. That test is not affected by my change; it did work before with GCC and still does – but it does fail with ifort/ifx/flang. I have not thought deeply whether it should be supported or not – and looking at the libgfortran source file, it often but (→ testcase) not consistently requires that an \n follows the \r. OK for mainline? [And: When the previous patch gets backported, this surely needs to be included as well.] Tobias --------------y30i2luhAXWgI2KUWvJposZG Content-Type: text/x-patch; charset=UTF-8; name="fix-tab-io.diff" Content-Disposition: attachment; filename="fix-tab-io.diff" Content-Transfer-Encoding: base64 Rm9ydHJhbjogQWNjZXB0IGFnYWluIHRhYiBhcyBhbHRlcm5hdGl2ZSB0byBzcGFjZSBhcyBz ZXBhcmF0b3IgW1BSMTE0MzA0XQoKVGhpcyBmaXhlcyBhIHNpZGUtZWZmZWN0IG9mL3JlZ3Jl c3Npb24gY2F1c2VkIGJ5IHIxNC05ODIyLWc5M2FkZjg4Y2M2NzQ0YSwKd2hpY2ggd2FzIGZv ciB0aGUgc2FtZSBQUi4KCglQUiBsaWJmb3J0cmFuLzExNDMwNAoKbGliZ2ZvcnRyYW4vQ2hh bmdlTG9nOgoKCSogaW8vbGlzdF9yZWFkLmMgKGVhdF9zZXBhcmF0b3IpOiBBY2NlcHQgdGFi IGFzIGFsdGVybmF0aXZlIHRvIHNwYWNlLgoKZ2NjL3Rlc3RzdWl0ZS9DaGFuZ2VMb2c6CgoJ KiBnZm9ydHJhbi5kZy9wcjExNDMwNC0yLmY5MDogTmV3IHRlc3QuCgogZ2NjL3Rlc3RzdWl0 ZS9nZm9ydHJhbi5kZy9wcjExNDMwNC0yLmY5MCB8IDgyICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrCiBsaWJnZm9ydHJhbi9pby9saXN0X3JlYWQuYyAgICAgICAgICAgICAg IHwgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgODMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvcHIxMTQzMDQt Mi5mOTAgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL3ByMTE0MzA0LTIuZjkwCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi41ZWY1ODc0ZjUyOAotLS0gL2Rl di9udWxsCisrKyBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvcHIxMTQzMDQtMi5mOTAK QEAgLTAsMCArMSw4MiBAQAorISB7IGRnLWRvIHJ1biB9CishCishIFBSIGZvcnRyYW4vMTE0 MzA0CishCishIEVuc3VyZSB0aGF0ICdcdCcgKHRhYikgaXMgc3VwcG9ydGVkIGFzIHNlcGFy YXRvciBpbiBsaXN0LWRpcmVjdGVkIGlucHV0CishIFdoaWxlIG5vdCByZWFsbHkgc3RhbmRh cmQgY29uZm9ybSwgdGhpcyBpcyB3aWRlbHkgdXNlZCBpbiB1c2VyIGlucHV0IGFuZAorISB3 aWRlbHkgc3VwcG9ydGVkLgorIQorCit1c2UgaXNvX2NfYmluZGluZworaW1wbGljaXQgbm9u ZQorY2hhcmFjdGVyKGxlbj0qLGtpbmQ9Y19jaGFyKSwgcGFyYW1ldGVyIDo6IHRhYiA9IENf SE9SSVpPTlRBTF9UQUIKKworISBBY2NlcHQgJzx0YWI+JyBhcyB2YXJpYW50IHRvICcgJyBh cyBzZXBhcmF0b3IKKyEgQ2hlY2sgdGhhdCA8Y2FycmlhZ2VfcmV0dXJuPjxuZXcgbGluZT4g YW5kIDxuZXdfbGluZT4gYXJlIGhhbmRsZWQKKworY2hhcmFjdGVyKGxlbj0qLGtpbmQ9Y19j aGFyKSwgcGFyYW1ldGVyIDo6IG5tbF9zdHIgJgorICAgPSAnJmlucGFybScvL0NfQ0FSUklB R0VfUkVUVVJOIC8vIENfTkVXX0xJTkUgLy8gJgorICAgICAnZmlyc3QnLy90YWIvLyc9Jy8v dGFiLy8nIC50cnVlLicvLyBDX05FV19MSU5FIC8vICYKKyAgICAgJyAsIG90aGVyJy8vdGFi Ly8nID0nLy90YWIvLyczJy8vdGFiLy8nLCAyJy8vdGFiLy8nLycKKworISBDaGVjayB0aGF0 IDxjYXJyaWFnZV9yZXR1cm4+IGlzIGhhbmRsZWQsCisKKyEgTm90ZTogRm9yIG5ldyBsaW5l LCBVbml4IHVzZXMgXG4sIFdpbmRvd3MgXHJcbiBidXQgb2xkIEFwcGxlIHN5c3RlbXMgdXNl ZCAnXHInCishCishIEdmb3J0cmFuIGRvZXMgbm90IHNlZW0gdG8gc3VwcG9ydCBhbGwgXHIs IGJ1dCB0aGUgZm9sbG93aW5nIGlzIHN1cHBvcnRlZAorISBzaW5jZSBhZ2VzLCAhIHdoaWNo IHNlZW1zIHRvIGJlIGEgZ2ZvcnRyYW4gZXh0ZW5zaW9uIGFzIGlmb3J0IGFuZCBmbGFuZyBk b24ndCBsaWtlIGl0LgorCitjaGFyYWN0ZXIobGVuPSosa2luZD1jX2NoYXIpLCBwYXJhbWV0 ZXIgOjogbm1sX3N0cjIgJgorICAgPSAnJmlucGFybScvL0NfQ0FSUklBR0VfUkVUVVJOIC8v IENfTkVXX0xJTkUgLy8gJgorICAgICAnZmlyc3QnLy9DX05FV19MSU5FLy8nPScvL3RhYi8v JyAudHJ1ZS4nLy8gQ19DQVJSSUFHRV9SRVRVUk4gLy8gJgorICAgICAnICwgb3RoZXInLy90 YWIvLycgPScvL3RhYi8vJzMnLy90YWIvLycsIDInLy90YWIvLycvJworCitjaGFyYWN0ZXIo bGVuPSosa2luZD1jX2NoYXIpLCBwYXJhbWV0ZXIgOjogc3RyICYKKyAgID0gdGFiLy8nMScv L3RhYi8vJzIsJy8vdGFiLy8nMycvL3RhYi8vJyw0Jy8vdGFiLy8nLCcvL3RhYi8vJzUnLy90 YWIvLycvJworY2hhcmFjdGVyKGxlbj0qLGtpbmQ9Y19jaGFyKSwgcGFyYW1ldGVyIDo6IHN0 cjIgJgorICAgPSB0YWIvLycxJy8vdGFiLy8nMjsnLy90YWIvLyczJy8vdGFiLy8nOzQnLy90 YWIvLyc7Jy8vdGFiLy8nNScvL3RhYi8vJy8nCitsb2dpY2FsIDo6IGZpcnN0CitpbnRlZ2Vy IDo6IG90aGVyKDQpCitpbnRlZ2VyIDo6IGludHMoNikKK25hbWVsaXN0IC9pbnBhcm0vIGZp cnN0ICwgb3RoZXIKKworb3RoZXIgPSAxCisKK29wZW4oOTksIGZpbGU9InRlc3QuaW5wIikK K3dyaXRlKDk5LCAnKGEpJykgbm1sX3N0cgorcmV3aW5kKDk5KQorcmVhZCg5OSxubWw9aW5w YXJtKQorY2xvc2UoOTksIHN0YXR1cz0iZGVsZXRlIikKKworaWYgKC5ub3QuZmlyc3QgLm9y LiBhbnkgKG90aGVyIC89IFszLDIsMSwxXSkpIHN0b3AgMQorCitvdGhlciA9IDkKKworb3Bl big5OSwgZmlsZT0idGVzdC5pbnAiKQord3JpdGUoOTksICcoYSknKSBubWxfc3RyMgorcmV3 aW5kKDk5KQorcmVhZCg5OSxubWw9aW5wYXJtKQorY2xvc2UoOTksIHN0YXR1cz0iZGVsZXRl IikKKworaWYgKC5ub3QuZmlyc3QgLm9yLiBhbnkgKG90aGVyIC89IFszLDIsOSw5XSkpIHN0 b3AgMgorCitpbnRzID0gNjYKKworb3Blbig5OSwgZmlsZT0idGVzdC5pbnAiLCBkZWNpbWFs PSdwb2ludCcpCit3cml0ZSg5OSwgJyhhKScpIHN0cgorcmV3aW5kKDk5KQorcmVhZCg5OSwq KSBpbnRzCitjbG9zZSg5OSwgc3RhdHVzPSJkZWxldGUiKQorCitpZiAoYW55IChpbnRzIC89 IFsxLDIsMyw0LDUsNjZdKSkgc3RvcCAzCisKK2ludHMgPSA3NyAKKworb3Blbig5OSwgZmls ZT0idGVzdC5pbnAiLCBkZWNpbWFsPSdjb21tYScpCit3cml0ZSg5OSwgJyhhKScpIHN0cjIK K3Jld2luZCg5OSkKK3JlYWQoOTksKikgaW50cworY2xvc2UoOTksIHN0YXR1cz0iZGVsZXRl IikKKworaWYgKGFueSAoaW50cyAvPSBbMSwyLDMsNCw1LDc3XSkpIHN0b3AgNAorZW5kCmRp ZmYgLS1naXQgYS9saWJnZm9ydHJhbi9pby9saXN0X3JlYWQuYyBiL2xpYmdmb3J0cmFuL2lv L2xpc3RfcmVhZC5jCmluZGV4IGI1NmYyYTRlNmQ2Li41YmJiZWYyNmMyNiAxMDA2NDQKLS0t IGEvbGliZ2ZvcnRyYW4vaW8vbGlzdF9yZWFkLmMKKysrIGIvbGliZ2ZvcnRyYW4vaW8vbGlz dF9yZWFkLmMKQEAgLTQ2Myw3ICs0NjMsNyBAQCBlYXRfc2VwYXJhdG9yIChzdF9wYXJhbWV0 ZXJfZHQgKmR0cCkKIAogICBkdHAtPnUucC5jb21tYV9mbGFnID0gMDsKICAgYyA9IG5leHRf Y2hhciAoZHRwKTsKLSAgaWYgKGMgPT0gJyAnKQorICBpZiAoYyA9PSAnICcgfHwgYyA9PSAn XHQnKQogICAgIHsKICAgICAgIGVhdF9zcGFjZXMgKGR0cCk7CiAgICAgICBjID0gbmV4dF9j aGFyIChkdHApOwo= --------------y30i2luhAXWgI2KUWvJposZG--