From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 71900 invoked by alias); 29 Sep 2017 09:15:52 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 71881 invoked by uid 89); 29 Sep 2017 09:15:51 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.2 required=5.0 tests=AWL,BAYES_00,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,RCVD_IN_SORBS_SPAM,SPF_PASS autolearn=no version=3.3.2 spammy=adhere, dirty, watch X-Spam-User: qpsmtpd, 2 recipients X-HELO: mail-yw0-f181.google.com Received: from mail-yw0-f181.google.com (HELO mail-yw0-f181.google.com) (209.85.161.181) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 29 Sep 2017 09:15:49 +0000 Received: by mail-yw0-f181.google.com with SMTP id t127so436852ywg.4; Fri, 29 Sep 2017 02:15:49 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=t6gnvIYO6peejiJoWOe6k7+TWRKp7mRJnBQjn9B9O/w=; b=MTvgzzoexjsd73lLvXTVA1opF8Ow/6hjKRyHrBKy/xweXbZxqF8bDFoaWsDjWHzfla eEGpjrjEN3sbLKGRDE+iXTXyDNE7G7zEL0e6g0NbM3Qwzx28rKFE3Blinf3Tol6Q8Kc2 ZL/frKa4uB6CYqO8KmKl+naQgJjj1P+eNrxOx08NyOqabWave9jSA8Mo+FFRvn54UjA/ PAco90JToHLC5qldvbc7oZLu6g5sbWJ+TvXgdu1XRjT9ImtOUdN/zdMDy6s1KZC1aP5H ciGhWGz7orBf9JegUKwOTe1eT901QBuxBo5vI+TkK00TK9WkF5hW8O5pg+FIuqxrUEz6 235Q== X-Gm-Message-State: AHPjjUjSOW8Z5sJR3I05Duk0ai9ofh1pce4JLwlinfssrIUS+/3OOQHB sOaD7mbtrMQInzFJMG1O7TtYWBAlrMkOh3bYe2w= X-Google-Smtp-Source: AOwi7QB73IaekcSk/hQTLWPU44zO0b2J9wQqPLXlmmNSwxxbffcgpgKOqf5SXChejMWparDebT5OD84LQvld7+bIIE8= X-Received: by 10.129.178.69 with SMTP id q66mr5539068ywh.290.1506676548035; Fri, 29 Sep 2017 02:15:48 -0700 (PDT) MIME-Version: 1.0 Received: by 10.129.162.148 with HTTP; Fri, 29 Sep 2017 02:15:47 -0700 (PDT) In-Reply-To: <20170927193624.GA91517@troutmask.apl.washington.edu> References: <20170927193624.GA91517@troutmask.apl.washington.edu> From: Janus Weil Date: Fri, 29 Sep 2017 09:15:00 -0000 Message-ID: Subject: Re: [PATCH] Fix fortran/81509 To: Steve Kargl Cc: gfortran , gcc-patches Content-Type: text/plain; charset="UTF-8" X-SW-Source: 2017-09/txt/msg01934.txt.bz2 Hi Steve, > As aside effect, the patch removes a questionable GNU Fortran > extension that allowed arguments to IAND, IOR, and IEOR to have > different kind type parameters. The behavior of this extension > was not documented. I don't really like that part. We were using the nice and convenient mechanism of gfc_notify_std here, which allows the developer to choose via the -std flag whether to strictly adhere to a chosen Fortran standard or to allow GNU extensions etc. You're taking away that flexibility and replacing it by an unconditional error. I don't actually think that's a good idea. In general one can argue about whether or not it's a good idea to use non-std extensions. But I think gfortran should rather leave the choice to its users, whether they want to use 'dirty and covenient' code or have very strict checking. We have nice mechanisms for this, and I do think we should keep them. Cheers, Janus > 2017-09-27 Steven G. Kargl > > PR fortran/81509 > * check.c: Rename function gfc_check_iand to gfc_check_iand_ieor_ior. > * check.c (boz_args_check): New function. Check I and J not both BOZ. > (gfc_check_dshift,gfc_check_iand_ieor_ior, gfc_check_ishft, > gfc_check_and, gfc_check_merge_bits): Use it. > * check.c (gfc_check_iand_ieor_ior): Force conversion of BOZ to kind > type of other agrument. Remove silly GNU extension. > (gfc_check_ieor, gfc_check_ior): Delete now unused functions. > * intrinsic.c (add_functions): Use gfc_check_iand_ieor_ior. Wrap long > line. > * intrinsic.h: Rename gfc_check_iand to gfc_check_iand_ieor_ior. > Delete prototype for bool gfc_check_ieor and gfc_check_ior > * intrinsic.texi: Update documentation for boz-literal-constant. > > 2017-09-27 Steven G. Kargl > > PR fortran/81509 > * gfortran.dg/graphite/id-26.f03: Fix non-conforming use of IAND. > * gfortran.dg/pr81509_1.f90: New test. > * gfortran.dg/pr81509_2.f90: New test. > > -- > Steve > 20170425 https://www.youtube.com/watch?v=VWUpyCsUKR4 > 20161221 https://www.youtube.com/watch?v=IbCHE-hONow