summaryrefslogtreecommitdiff
path: root/libgomp
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2008-06-20 02:18:07 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2008-06-20 02:18:07 +0000
commitf6430caa19263f035c754f96bd305e652bafc895 (patch)
treef28feb4e7a51182a0bf7d4ca97a21a4def2af406 /libgomp
parent69788d047c55eb200084ab4b27e4097ceb213bfa (diff)
downloadgcc-f6430caa19263f035c754f96bd305e652bafc895.tar.gz
PR c++/36523
* cgraphunit.c (cgraph_process_new_functions): Don't clear node->needed and node->reachable. * cgraphbuild.c (record_reference): Handle OMP_PARALLEL and OMP_TASK. * omp-low.c (delete_omp_context): Call finalize_task_copyfn. (expand_task_call): Don't call expand_task_copyfn. (expand_task_copyfn): Renamed to... (finalize_task_copyfn): ... this. * testsuite/libgomp.c++/task-7.C: New function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@136977 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgomp')
-rw-r--r--libgomp/ChangeLog3
-rw-r--r--libgomp/testsuite/libgomp.c++/task-7.C18
2 files changed, 21 insertions, 0 deletions
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index 784d59f933d..ed27454354e 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -2,6 +2,9 @@
* testsuite/libgomp.c/nqueens-1.c: New test.
+ PR c++/36523
+ * testsuite/libgomp.c++/task-7.C: New function.
+
2008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* configure: Regenerate.
diff --git a/libgomp/testsuite/libgomp.c++/task-7.C b/libgomp/testsuite/libgomp.c++/task-7.C
new file mode 100644
index 00000000000..e9828cd2c4d
--- /dev/null
+++ b/libgomp/testsuite/libgomp.c++/task-7.C
@@ -0,0 +1,18 @@
+// PR c++/36523
+// { dg-do run }
+
+template<typename T>
+struct A
+{
+ A() { }
+ A(const A&) { }
+ void foo() { }
+};
+
+int main()
+{
+ A<int> a;
+ #pragma omp task firstprivate (a)
+ a.foo();
+ return 0;
+}