From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from cc-smtpout1.netcologne.de (cc-smtpout1.netcologne.de [IPv6:2001:4dd0:100:1062:25:2:0:1]) by sourceware.org (Postfix) with ESMTPS id 6BEF83858C30 for ; Tue, 7 Mar 2023 22:58:30 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 6BEF83858C30 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=netcologne.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=netcologne.de Received: from cc-smtpin1.netcologne.de (cc-smtpin1.netcologne.de [89.1.8.201]) by cc-smtpout1.netcologne.de (Postfix) with ESMTP id AF5C6125D8; Tue, 7 Mar 2023 23:58:28 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=netcologne.de; s=nc1116a; t=1678229908; bh=nXR3GSPssQNsSqns63mvfF20Rv5j7if/mjEWngtPOMU=; h=Message-ID:Date:Subject:To:References:From:In-Reply-To:From; b=XTSPkttArB9Rk4GIGXAaZtZu42GC0udBTRZVOdGHiuTlEMtZ5mDqODjSITZ3tv8ZV HY7Py8CKGaOuhlaHcE6tqbi7Q21ibvLTkia2QE2R0g99/JRY0/hx2iyaGbNlOJHFMj xsqJNJkUL6JsWRcrtIBAeJE4C06KeOvR2ybzR1zwQzWmTeacQxeyNz4qomDvxT6iV2 CmS9kGhZfLBR7VLDcfgm/8S71IRpaNymn/iYolJ5zvEqqea0t6j+UZVhsvib6GrvI/ 4t32KSZASPKxcd5MBntjiwlYEVSfbItV30b+Rv4S5ULVwLumr+Jj+DZuX2SwZEZB5L twcRlY9XYjiIA== Received: from [IPV6:2001:4dd7:c7b6:0:7285:c2ff:fe6c:992d] (2001-4dd7-c7b6-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de [IPv6:2001:4dd7:c7b6:0:7285:c2ff:fe6c:992d]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by cc-smtpin1.netcologne.de (Postfix) with ESMTPSA id 68C1511D77; Tue, 7 Mar 2023 23:58:27 +0100 (CET) Message-ID: <320b23ee-c38c-583a-73b9-78739c8f2046@netcologne.de> Date: Tue, 7 Mar 2023 23:58:26 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 Subject: Re: F77 indexed file support Content-Language: en-US To: Roland Hughes , "fortran@gcc.gnu.org" References: <8f40b52e-c264-d1e4-06dd-fb9990a64bb8@logikalsolutions.com> From: Thomas Koenig In-Reply-To: <8f40b52e-c264-d1e4-06dd-fb9990a64bb8@logikalsolutions.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-NetCologne-Spam: L X-Rspamd-Action: no action X-Rspamd-Queue-Id: 68C1511D77 X-Spamd-Bar: --- X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,BODY_8BITS,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A,RCVD_IN_DNSWL_LOW,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: Hi Roland, >  210  OPEN (UNIT=K_DRAW_CHAN, >      1        FILE=DRAWING_DATA, >      2        STATUS='OLD', >      3        ORGANIZATION='INDEXED', I'd never heard of that one up to now. >      4        ACCESS='KEYED', >      5        RECORDTYPE='FIXED', >      6        FORM='UNFORMATTED', >      7        RECL=K_DRAWING_RECORD_SIZE/4, >      8        CARRIAGECONTROL='FORTRAN', >      9        KEY=(1:8:CHARACTER), >      1        DISP='KEEP', >      2        IOSTAT=L_DRAW_ERR, >      3        ERR=999) > > The ORGANIZATION='INDEXED' is key. > > GnuCOBOL > > https://gnucobol.sourceforge.io/ > > uses the BerkleyDB (sp?) library so the standard COBOL indexed file > support from the big computers can at least be mimicked. > > I'm searching everywhere and I cannot find Gnu Fortran (any flavor) > having an ORGANIZATION clause in the OPEN(). ORGANIZATION is not an extension that gfortran supports. ifort, which traces its lineage back to VMS Fortran, supports ORGANIZATION, but not 'INDEXED', according to https://www.intel.com/content/www/us/en/develop/documentation/fortran-compiler-oneapi-dev-guide-and-reference/top/language-reference/file-operation-i-o-statements/open-statement-specifiers/open-organization-specifier.html This is likely a Fortran interface to a VMS speciality; the older operating systems had stuff like that. UNIX did away with all the record-orientation (I also remember VSAM and ISAM data sets on old IBM mainframes) and UNIX and derivatives, and Windows, now just offers the "stream of bytes" model. So, if you need the functionality, you will have to implement it yourself, possibly via a database. Best regards Thomas