From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id B1C473858C66 for ; Mon, 24 Jul 2023 19:49:56 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B1C473858C66 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1690228196; h=from:from:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references; bh=hxa39jonsm/CAeubSojX25ArOpEOxN2RehCXM3dz63E=; b=R9O2jEZ3Fq6WOu1pNqlerZ1JkgIVFb1quCKVHHaaHLcLx5S+bhlvhIKJ/e//W5kwEbUPqw hbsxdNW8/n9QUfwcFlig8r24hRwYZvnYjG9rxR9Zz9tUp0I9AH9irrSXvrBaJWsuWLcY9J pxJ86bXXxdoiEeWZXLVQU33ZRp1LEGk= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-212-vCsToZDkPamtagg6DeAhGQ-1; Mon, 24 Jul 2023 15:49:52 -0400 X-MC-Unique: vCsToZDkPamtagg6DeAhGQ-1 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.rdu2.redhat.com [10.11.54.8]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 59B67809F8F; Mon, 24 Jul 2023 19:49:52 +0000 (UTC) Received: from tucnak.zalov.cz (unknown [10.45.224.18]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 1F5F9C2C7D3; Mon, 24 Jul 2023 19:49:52 +0000 (UTC) Received: from tucnak.zalov.cz (localhost [127.0.0.1]) by tucnak.zalov.cz (8.17.1/8.17.1) with ESMTPS id 36OJnn3g3993646 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Mon, 24 Jul 2023 21:49:50 +0200 Received: (from jakub@localhost) by tucnak.zalov.cz (8.17.1/8.17.1/Submit) id 36OJnnPb3993645; Mon, 24 Jul 2023 21:49:49 +0200 Date: Mon, 24 Jul 2023 21:49:48 +0200 From: Jakub Jelinek To: Tobias Burnus Cc: gcc-patches , fortran Subject: Re: [Patch] OpenMP/Fortran: Reject not strictly nested target -> teams [PR110725, PR71065] Message-ID: Reply-To: Jakub Jelinek References: MIME-Version: 1.0 In-Reply-To: X-Scanned-By: MIMEDefang 3.1 on 10.11.54.8 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-Spam-Status: No, score=-3.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Mon, Jul 24, 2023 at 09:43:10PM +0200, Tobias Burnus wrote: > This patch adds diagnostic for additional code alongside a nested teams > in a target region. > > The diagnostic is happening soon after parsing such that expressions > in clauses are not yet expanded - those would end up before TEAMS > and can be very complicated (e.g. assume an allocatable-returning function). > > (The patch diagnoses it in openmp.cc; after trans-openmp.cc it would > already be to late.) > > Comments, remarks, suggestions? Thanks for working on this. The fuzzy thing on the Fortran side is if e.g. multiple nested BLOCK statements can appear sandwiched in between target and teams (of course without declarations in them), or if e.g. extra empty BLOCK; END BLOCK could appear next to it etc. And on C/C++ side similarly with {}s, ; is an empty statement, so #pragma omp target { ; #pragma omp teams ; ; } etc. would be invalid. Jakub