From patchwork Tue Mar 28 09:35:35 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Thomas Schwinge X-Patchwork-Id: 744177 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3vsm3k1V0Xz9s7N for ; Tue, 28 Mar 2017 20:36:01 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b="ACbiUWeh"; dkim-atps=neutral DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:subject:date:message-id:mime-version:content-type :content-transfer-encoding; q=dns; s=default; b=FX1cn6OC5+A44pi8 G9NilNbzysX8iW7ZMmSwYEArxTsyVw9qkr9CaXahO+7hhqE4XvcwS5BeAWXtOfNU W/oyiuf6ASpsbjSiz5RZ/L5G4AyDzVzSv/r5Uu9E3tIiQdje3g7rvlsoEK1v9hAa BSK/4KHGMxLvfazhsE4zl/HgXg8= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:subject:date:message-id:mime-version:content-type :content-transfer-encoding; s=default; bh=bzo5ANqmWVi8nz7Dk1SOkd XneEo=; b=ACbiUWehFjHdqE/fJ0XRQZG2eTZfyjDmwaXkQC9+fbxGmd4Pza6Ehi 0jOfG5PgS2VFLdTgkxVaJkWUjc8Jl5ohehKaB3QEK0OMaNWmVYEVS7XpXj+GT/Gf lBevUAiI/uCrzlJnxh/V8V8KBO/7UfOenTiNIC3STeQJn0/kP1la4= Received: (qmail 88820 invoked by alias); 28 Mar 2017 09:35:49 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 88769 invoked by uid 89); 28 Mar 2017 09:35:48 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-24.4 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_PASS autolearn=ham version=3.3.2 spammy=ary, 137 X-HELO: relay1.mentorg.com Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 28 Mar 2017 09:35:45 +0000 Received: from nat-ies.mentorg.com ([192.94.31.2] helo=svr-ies-mbx-01.mgc.mentorg.com) by relay1.mentorg.com with esmtp id 1csnXT-00070j-4o from Thomas_Schwinge@mentor.com ; Tue, 28 Mar 2017 02:35:43 -0700 Received: from hertz.schwinge.homeip.net (137.202.0.87) by svr-ies-mbx-01.mgc.mentorg.com (139.181.222.1) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Tue, 28 Mar 2017 10:35:39 +0100 From: Thomas Schwinge To: , Jakub Jelinek Subject: OpenACC default clause maintenance User-Agent: Notmuch/0.9-101-g81dad07 (http://notmuchmail.org) Emacs/24.5.1 (x86_64-pc-linux-gnu) Date: Tue, 28 Mar 2017 11:35:35 +0200 Message-ID: <87k279agm0.fsf@hertz.schwinge.homeip.net> MIME-Version: 1.0 X-ClientProxiedBy: svr-ies-mbx-01.mgc.mentorg.com (139.181.222.1) To svr-ies-mbx-01.mgc.mentorg.com (139.181.222.1) Hi! I noticed that in C++, for a directive like: #pragma acc parallel default (hello) ... we currently print two error messages for the same location: [...]:35:30: error: expected 'none' before 'hello' [...]:35:30: error: expected ')' before 'hello' I think it should be enough to just print the first syntax error (which is what we do for C). I also generally beefed up testing of the OpenACC default clause in C, C++, Fortran. OK for trunk in next stage 1 (I suppose)? For now committed to gomp-4_0-branch in r246526: commit b11ff2d0f10ef2e2005ccac0d84a02c39117ef9a Author: tschwinge Date: Tue Mar 28 09:34:03 2017 +0000 OpenACC default clause maintenance gcc/cp/ * parser.c (cp_parser_omp_clause_default): Avoid printing more than one syntax error message. gcc/testsuite/ * c-c++-common/goacc/data-default-1.c: Remove file. * c-c++-common/goacc/default-1.c: New file. * c-c++-common/goacc/default-2.c: Likewise. * c-c++-common/goacc/default-3.c: Likewise. * c-c++-common/goacc/default-4.c: Likewise. * gfortran.dg/goacc/default.f95: Remove file. * gfortran.dg/goacc/default-1.f95: New file. * gfortran.dg/goacc/default-2.f: Likewise. * gfortran.dg/goacc/default-3.f95: Likewise. * gfortran.dg/goacc/default-4.f: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@246526 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/cp/ChangeLog.gomp | 5 ++ gcc/cp/parser.c | 3 +- gcc/testsuite/ChangeLog.gomp | 13 +++++ gcc/testsuite/c-c++-common/goacc/data-default-1.c | 37 -------------- gcc/testsuite/c-c++-common/goacc/default-1.c | 9 ++++ gcc/testsuite/c-c++-common/goacc/default-2.c | 59 ++++++++++++++++++++++ gcc/testsuite/c-c++-common/goacc/default-3.c | 18 +++++++ gcc/testsuite/c-c++-common/goacc/default-4.c | 45 +++++++++++++++++ gcc/testsuite/gfortran.dg/goacc/default-1.f95 | 10 ++++ gcc/testsuite/gfortran.dg/goacc/default-2.f | 60 +++++++++++++++++++++++ gcc/testsuite/gfortran.dg/goacc/default-3.f95 | 18 +++++++ gcc/testsuite/gfortran.dg/goacc/default-4.f | 39 +++++++++++++++ gcc/testsuite/gfortran.dg/goacc/default.f95 | 17 ------- 13 files changed, 278 insertions(+), 55 deletions(-) Grüße Thomas diff --git gcc/cp/ChangeLog.gomp gcc/cp/ChangeLog.gomp [snipped] diff --git gcc/cp/parser.c gcc/cp/parser.c index 6dcc099..d80d056 100644 --- gcc/cp/parser.c +++ gcc/cp/parser.c @@ -30722,7 +30722,8 @@ cp_parser_omp_clause_default (cp_parser *parser, tree list, cp_parser_error (parser, "expected % or %"); } - if (!cp_parser_require (parser, CPP_CLOSE_PAREN, RT_CLOSE_PAREN)) + if (kind == OMP_CLAUSE_DEFAULT_UNSPECIFIED + || !cp_parser_require (parser, CPP_CLOSE_PAREN, RT_CLOSE_PAREN)) cp_parser_skip_to_closing_parenthesis (parser, /*recovering=*/true, /*or_comma=*/false, /*consume_paren=*/true); diff --git gcc/testsuite/ChangeLog.gomp gcc/testsuite/ChangeLog.gomp [snipped] diff --git gcc/testsuite/c-c++-common/goacc/data-default-1.c gcc/testsuite/c-c++-common/goacc/data-default-1.c deleted file mode 100644 index 631032e..0000000 --- gcc/testsuite/c-c++-common/goacc/data-default-1.c +++ /dev/null @@ -1,37 +0,0 @@ -/* { dg-do compile } */ - - -int main () -{ - int n = 2; - int ary[2]; - -#pragma acc parallel default (none) /* { dg-message "'parallel' construct" 2 } */ - { - ary[0] /* { dg-error "not specified in enclosing" } */ - = n; /* { dg-error "not specified in enclosing" } */ - } - -#pragma acc kernels default (none) /* { dg-message "'kernels' construct" 2 } */ - { - ary[0] /* { dg-error "not specified in enclosing" } */ - = n; /* { dg-error "not specified in enclosing" } */ - } - -#pragma acc data copy (ary, n) - { -#pragma acc parallel default (none) - { - ary[0] - = n; - } - -#pragma acc kernels default (none) - { - ary[0] - = n; - } - } - - return 0; -} diff --git gcc/testsuite/c-c++-common/goacc/default-1.c gcc/testsuite/c-c++-common/goacc/default-1.c new file mode 100644 index 0000000..4d31dbc --- /dev/null +++ gcc/testsuite/c-c++-common/goacc/default-1.c @@ -0,0 +1,9 @@ +/* OpenACC default clause: valid syntax. */ + +void f1 () +{ +#pragma acc kernels default (none) + ; +#pragma acc parallel default (none) + ; +} diff --git gcc/testsuite/c-c++-common/goacc/default-2.c gcc/testsuite/c-c++-common/goacc/default-2.c new file mode 100644 index 0000000..d6b6cdc --- /dev/null +++ gcc/testsuite/c-c++-common/goacc/default-2.c @@ -0,0 +1,59 @@ +/* OpenACC default clause: invalid syntax. */ + +void f1 () +{ +#pragma acc kernels default /* { dg-error "expected .\\(. before end of line" } */ + ; +#pragma acc parallel default /* { dg-error "expected .\\(. before end of line" } */ + ; + +#pragma acc kernels default ( /* { dg-error "expected .none. before end of line" } */ + ; +#pragma acc parallel default ( /* { dg-error "expected .none. before end of line" } */ + ; + +#pragma acc kernels default (, /* { dg-error "expected .none. before .,. token" } */ + ; +#pragma acc parallel default (, /* { dg-error "expected .none. before .,. token" } */ + ; + +#pragma acc kernels default () /* { dg-error "expected .none. before .\\). token" } */ + ; +#pragma acc parallel default () /* { dg-error "expected .none. before .\\). token" } */ + ; + +#pragma acc kernels default (,) /* { dg-error "expected .none. before .,. token" } */ + ; +#pragma acc parallel default (,) /* { dg-error "expected .none. before .,. token" } */ + ; + +#pragma acc kernels default (firstprivate) /* { dg-error "expected .none. before .firstprivate." } */ + ; +#pragma acc parallel default (firstprivate) /* { dg-error "expected .none. before .firstprivate." } */ + ; + +#pragma acc kernels default (private) /* { dg-error "expected .none. before .private." } */ + ; +#pragma acc parallel default (private) /* { dg-error "expected .none. before .private." } */ + ; + +#pragma acc kernels default (shared) /* { dg-error "expected .none. before .shared." } */ + ; +#pragma acc parallel default (shared) /* { dg-error "expected .none. before .shared." } */ + ; + +#pragma acc kernels default (none /* { dg-error "expected .\\). before end of line" } */ + ; +#pragma acc parallel default (none /* { dg-error "expected .\\). before end of line" } */ + ; + +#pragma acc kernels default (none none) /* { dg-error "expected .\\). before .none." } */ + ; +#pragma acc parallel default (none none) /* { dg-error "expected .\\). before .none." } */ + ; + +#pragma acc kernels default (none, none) /* { dg-error "expected .\\). before .,. token" } */ + ; +#pragma acc parallel default (none, none) /* { dg-error "expected .\\). before .,. token" } */ + ; +} diff --git gcc/testsuite/c-c++-common/goacc/default-3.c gcc/testsuite/c-c++-common/goacc/default-3.c new file mode 100644 index 0000000..ac169a9 --- /dev/null +++ gcc/testsuite/c-c++-common/goacc/default-3.c @@ -0,0 +1,18 @@ +/* OpenACC default (none) clause. */ + +void f1 () +{ + int f1_a = 2; + float f1_b[2]; + +#pragma acc kernels default (none) /* { dg-message "enclosing OpenACC .kernels. construct" } */ + { + f1_b[0] /* { dg-error ".f1_b. not specified in enclosing OpenACC .kernels. construct" } */ + = f1_a; /* { dg-error ".f1_a. not specified in enclosing OpenACC .kernels. construct" } */ + } +#pragma acc parallel default (none) /* { dg-message "enclosing OpenACC .parallel. construct" } */ + { + f1_b[0] /* { dg-error ".f1_b. not specified in enclosing OpenACC .parallel. construct" } */ + = f1_a; /* { dg-error ".f1_a. not specified in enclosing OpenACC .parallel. construct" } */ + } +} diff --git gcc/testsuite/c-c++-common/goacc/default-4.c gcc/testsuite/c-c++-common/goacc/default-4.c new file mode 100644 index 0000000..787b352 --- /dev/null +++ gcc/testsuite/c-c++-common/goacc/default-4.c @@ -0,0 +1,45 @@ +/* OpenACC default clause inside data construct. */ + +/* { dg-additional-options "-fdump-tree-gimple" } */ + +void f1 () +{ + int f1_a = 2; + float f1_b[2]; + +#pragma acc data copyin (f1_a) copyout (f1_b) + /* { dg-final { scan-tree-dump-times "omp target oacc_data map\\(force_from:f1_b \[^\\)\]+\\) map\\(force_to:f1_a" 1 "gimple" } } */ + { +#pragma acc kernels + /* { dg-final { scan-tree-dump-times "omp target oacc_kernels map\\(tofrom:f1_b \[^\\)\]+\\) map\\(tofrom:f1_a" 1 "gimple" } } */ + { + f1_b[0] = f1_a; + } +#pragma acc parallel + /* { dg-final { scan-tree-dump-times "omp target oacc_parallel map\\(tofrom:f1_b \[^\\)\]+\\) map\\(tofrom:f1_a" 1 "gimple" } } */ + { + f1_b[0] = f1_a; + } + } +} + +void f2 () +{ + int f2_a = 2; + float f2_b[2]; + +#pragma acc data copyin (f2_a) copyout (f2_b) + /* { dg-final { scan-tree-dump-times "omp target oacc_data map\\(force_from:f2_b \[^\\)\]+\\) map\\(force_to:f2_a" 1 "gimple" } } */ + { +#pragma acc kernels default (none) + /* { dg-final { scan-tree-dump-times "omp target oacc_kernels default\\(none\\) map\\(tofrom:f2_b \[^\\)\]+\\) map\\(tofrom:f2_a" 1 "gimple" } } */ + { + f2_b[0] = f2_a; + } +#pragma acc parallel default (none) + /* { dg-final { scan-tree-dump-times "omp target oacc_parallel default\\(none\\) map\\(tofrom:f2_b \[^\\)\]+\\) map\\(tofrom:f2_a" 1 "gimple" } } */ + { + f2_b[0] = f2_a; + } + } +} diff --git gcc/testsuite/gfortran.dg/goacc/default-1.f95 gcc/testsuite/gfortran.dg/goacc/default-1.f95 new file mode 100644 index 0000000..a79b444 --- /dev/null +++ gcc/testsuite/gfortran.dg/goacc/default-1.f95 @@ -0,0 +1,10 @@ +! OpenACC default clause: valid syntax. + +subroutine f1 + implicit none + + !$acc kernels default (none) + !$acc end kernels + !$acc parallel default (none) + !$acc end parallel +end subroutine f1 diff --git gcc/testsuite/gfortran.dg/goacc/default-2.f gcc/testsuite/gfortran.dg/goacc/default-2.f new file mode 100644 index 0000000..8f88688 --- /dev/null +++ gcc/testsuite/gfortran.dg/goacc/default-2.f @@ -0,0 +1,60 @@ +! OpenACC default clause: invalid syntax. + + SUBROUTINE F1 + IMPLICIT NONE + +!$ACC KERNELS DEFAULT ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END KERNELS ! { dg-error "Unexpected" } +!$ACC PARALLEL DEFAULT ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END PARALLEL ! { dg-error "Unexpected" } + +!$ACC KERNELS DEFAULT ( ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END KERNELS ! { dg-error "Unexpected" } +!$ACC PARALLEL DEFAULT ( ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END PARALLEL ! { dg-error "Unexpected" } + +!$ACC KERNELS DEFAULT (, ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END KERNELS ! { dg-error "Unexpected" } +!$ACC PARALLEL DEFAULT (, ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END PARALLEL ! { dg-error "Unexpected" } + +!$ACC KERNELS DEFAULT () ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END KERNELS ! { dg-error "Unexpected" } +!$ACC PARALLEL DEFAULT () ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END PARALLEL ! { dg-error "Unexpected" } + +!$ACC KERNELS DEFAULT (,) ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END KERNELS ! { dg-error "Unexpected" } +!$ACC PARALLEL DEFAULT (,) ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END PARALLEL ! { dg-error "Unexpected" } + +!$ACC KERNELS DEFAULT (FIRSTPRIVATE) ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END KERNELS ! { dg-error "Unexpected" } +!$ACC PARALLEL DEFAULT (FIRSTPRIVATE) ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END PARALLEL ! { dg-error "Unexpected" } + +!$ACC KERNELS DEFAULT (PRIVATE) ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END KERNELS ! { dg-error "Unexpected" } +!$ACC PARALLEL DEFAULT (PRIVATE) ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END PARALLEL ! { dg-error "Unexpected" } + +!$ACC KERNELS DEFAULT (SHARED) ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END KERNELS ! { dg-error "Unexpected" } +!$ACC PARALLEL DEFAULT (SHARED) ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END PARALLEL ! { dg-error "Unexpected" } + +!$ACC KERNELS DEFAULT (NONE ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END KERNELS ! { dg-error "Unexpected" } +!$ACC PARALLEL DEFAULT (NONE ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END PARALLEL ! { dg-error "Unexpected" } + +!$ACC KERNELS DEFAULT (NONE NONE) ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END KERNELS ! { dg-error "Unexpected" } +!$ACC PARALLEL DEFAULT (NONE NONE) ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END PARALLEL ! { dg-error "Unexpected" } + +!$ACC KERNELS DEFAULT (NONE, NONE) ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END KERNELS ! { dg-error "Unexpected" } +!$ACC PARALLEL DEFAULT (NONE, NONE) ! { dg-error "Unclassifiable OpenACC directive" } +!$ACC END PARALLEL ! { dg-error "Unexpected" } + END SUBROUTINE F1 diff --git gcc/testsuite/gfortran.dg/goacc/default-3.f95 gcc/testsuite/gfortran.dg/goacc/default-3.f95 new file mode 100644 index 0000000..98ed342 --- /dev/null +++ gcc/testsuite/gfortran.dg/goacc/default-3.f95 @@ -0,0 +1,18 @@ +! OpenACC default (none) clause. + +subroutine f1 + implicit none + integer :: f1_a = 2 + real, dimension (2) :: f1_b + + !$acc kernels default (none) ! { dg-message "enclosing OpenACC .kernels. construct" } + f1_b(1) & ! { dg-error ".f1_b. not specified in enclosing OpenACC .kernels. construct" "" { xfail *-*-* } } + = f1_a; ! { dg-error ".f1_a. not specified in enclosing OpenACC .kernels. construct" } + ! { dg-bogus ".f1_b. not specified in enclosing OpenACC .kernels. construct" "" { xfail *-*-* } .-1 } + !$acc end kernels + !$acc parallel default (none) ! { dg-message "enclosing OpenACC .parallel. construct" } + f1_b(1) & ! { dg-error ".f1_b. not specified in enclosing OpenACC .parallel. construct" "" { xfail *-*-* } } + = f1_a; ! { dg-error ".f1_a. not specified in enclosing OpenACC .parallel. construct" } + ! { dg-bogus ".f1_b. not specified in enclosing OpenACC .parallel. construct" "" { xfail *-*-* } .-1 } + !$acc end parallel +end subroutine f1 diff --git gcc/testsuite/gfortran.dg/goacc/default-4.f gcc/testsuite/gfortran.dg/goacc/default-4.f new file mode 100644 index 0000000..b2f73c3 --- /dev/null +++ gcc/testsuite/gfortran.dg/goacc/default-4.f @@ -0,0 +1,39 @@ +! OpenACC default clause inside data construct. + +! { dg-additional-options "-fdump-tree-gimple" } + + SUBROUTINE F1 + IMPLICIT NONE + INTEGER :: F1_A = 2 + REAL, DIMENSION (2) :: F1_B + +!$ACC DATA COPYIN (F1_A) COPYOUT (F1_B) +! { dg-final { scan-tree-dump-times "omp target oacc_data map\\(force_to:f1_a \[^\\)\]+\\) map\\(force_from:f1_b" 1 "gimple" } } +!$ACC KERNELS +! { dg-final { scan-tree-dump-times "omp target oacc_kernels map\\(tofrom:f1_b \[^\\)\]+\\) map\\(tofrom:f1_a" 1 "gimple" } } + F1_B(1) = F1_A; +!$ACC END KERNELS +!$ACC PARALLEL +! { dg-final { scan-tree-dump-times "omp target oacc_parallel map\\(tofrom:f1_b \[^\\)\]+\\) map\\(tofrom:f1_a" 1 "gimple" } } + F1_B(1) = F1_A; +!$ACC END PARALLEL +!$ACC END DATA + END SUBROUTINE F1 + + SUBROUTINE F2 + IMPLICIT NONE + INTEGER :: F2_A = 2 + REAL, DIMENSION (2) :: F2_B + +!$ACC DATA COPYIN (F2_A) COPYOUT (F2_B) +! { dg-final { scan-tree-dump-times "omp target oacc_data map\\(force_to:f2_a \[^\\)\]+\\) map\\(force_from:f2_b" 1 "gimple" } } +!$ACC KERNELS DEFAULT (NONE) +! { dg-final { scan-tree-dump-times "omp target oacc_kernels default\\(none\\) map\\(tofrom:f2_b \[^\\)\]+\\) map\\(tofrom:f2_a" 1 "gimple" } } + F2_B(1) = F2_A; +!$ACC END KERNELS +!$ACC PARALLEL DEFAULT (NONE) +! { dg-final { scan-tree-dump-times "omp target oacc_parallel default\\(none\\) map\\(tofrom:f2_b \[^\\)\]+\\) map\\(tofrom:f2_a" 1 "gimple" } } + F2_B(1) = F2_A; +!$ACC END PARALLEL +!$ACC END DATA + END SUBROUTINE F2 diff --git gcc/testsuite/gfortran.dg/goacc/default.f95 gcc/testsuite/gfortran.dg/goacc/default.f95 deleted file mode 100644 index c1fc52e..0000000 --- gcc/testsuite/gfortran.dg/goacc/default.f95 +++ /dev/null @@ -1,17 +0,0 @@ -! { dg-do compile } - -program tile - integer i, j, a - - !$acc parallel default (shared) ! { dg-error "Unclassifiable OpenACC directive" } - !$acc end parallel ! { dg-error "Unexpected" } - - !$acc parallel default (private) ! { dg-error "Unclassifiable OpenACC directive" } - !$acc end parallel ! { dg-error "Unexpected" } - - !$acc parallel default (none) - !$acc end parallel - - !$acc parallel default (firstprivate) ! { dg-error "Unclassifiable OpenACC directive" } - !$acc end parallel ! { dg-error "Unexpected" } -end program tile