public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libgomp/30703]  New: ICE Segmentation fault on using OpenMP
@ 2007-02-04 23:09 bowie dot owens at csiro dot au
  2007-02-04 23:12 ` [Bug libgomp/30703] " bowie dot owens at csiro dot au
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: bowie dot owens at csiro dot au @ 2007-02-04 23:09 UTC (permalink / raw)
  To: gcc-bugs

Using the following version from svn.

g++ -v
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../gcc_4_2_svn/configure
--prefix=/local_scratch/owe043/gcc_4_2 --enable-languages=c,c++
Thread model: posix
gcc version 4.2.0 20070201 (prerelease)

On a Fedora Core 4 system.

Using the pre-processed file (to be attached) the ICE occurs with the following
command line:

g++ -fopenmp foo.ii

Note that no ICE occurs if the -fopenmp is omitted.

The expected behaviour is compilation completed possibly with errors or
warnings. The actual behaviour is an ICE. The error message is as below.

foo.cc:509:   instantiated from here
nlopt/simulated_annealing.h:149: internal compiler error: Segmentation fault


-- 
           Summary: ICE Segmentation fault on using OpenMP
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libgomp
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: bowie dot owens at csiro dot au
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30703


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug libgomp/30703] ICE Segmentation fault on using OpenMP
  2007-02-04 23:09 [Bug libgomp/30703] New: ICE Segmentation fault on using OpenMP bowie dot owens at csiro dot au
@ 2007-02-04 23:12 ` bowie dot owens at csiro dot au
  2007-02-06 10:11 ` [Bug c++/30703] " jakub at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: bowie dot owens at csiro dot au @ 2007-02-04 23:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from bowie dot owens at csiro dot au  2007-02-04 23:12 -------
Created an attachment (id=13006)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13006&action=view)
A preprocessed version of foo.cc which causes the ICE (compressed with bzip2).


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30703


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug c++/30703] ICE Segmentation fault on using OpenMP
  2007-02-04 23:09 [Bug libgomp/30703] New: ICE Segmentation fault on using OpenMP bowie dot owens at csiro dot au
  2007-02-04 23:12 ` [Bug libgomp/30703] " bowie dot owens at csiro dot au
@ 2007-02-06 10:11 ` jakub at gcc dot gnu dot org
  2007-02-06 15:02 ` jakub at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: jakub at gcc dot gnu dot org @ 2007-02-06 10:11 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from jakub at gcc dot gnu dot org  2007-02-06 10:11 -------
Simplified testcase:
struct A
{
  A() {}
  ~A() {}
  int i;
};

void
foo (A a)
{
#pragma omp parallel firstprivate (a)
  a.i++;
}

The problem is that while OpenMP 2.5 prohibits firstprivate etc. vars having
reference type (and we properly diagnose it), cp_genericize_r changes
TREE_ADDRESSABLE class parameters to reference type internally and this is
something cc1plus should handle.


-- 

jakub at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |jakub at gcc dot gnu dot org
                   |dot org                     |
             Status|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2007-02-06 10:11:01
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30703


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug c++/30703] ICE Segmentation fault on using OpenMP
  2007-02-04 23:09 [Bug libgomp/30703] New: ICE Segmentation fault on using OpenMP bowie dot owens at csiro dot au
  2007-02-04 23:12 ` [Bug libgomp/30703] " bowie dot owens at csiro dot au
  2007-02-06 10:11 ` [Bug c++/30703] " jakub at gcc dot gnu dot org
@ 2007-02-06 15:02 ` jakub at gcc dot gnu dot org
  2007-02-07 12:16 ` jakub at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: jakub at gcc dot gnu dot org @ 2007-02-06 15:02 UTC (permalink / raw)
  To: gcc-bugs



-- 

jakub at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|                            |http://gcc.gnu.org/ml/gcc-
                   |                            |patches/2007-
                   |                            |02/msg00501.html
   Target Milestone|---                         |4.2.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30703


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug c++/30703] ICE Segmentation fault on using OpenMP
  2007-02-04 23:09 [Bug libgomp/30703] New: ICE Segmentation fault on using OpenMP bowie dot owens at csiro dot au
                   ` (2 preceding siblings ...)
  2007-02-06 15:02 ` jakub at gcc dot gnu dot org
@ 2007-02-07 12:16 ` jakub at gcc dot gnu dot org
  2007-02-07 13:37 ` jakub at gcc dot gnu dot org
  2007-02-08 23:31 ` jakub at gcc dot gnu dot org
  5 siblings, 0 replies; 7+ messages in thread
From: jakub at gcc dot gnu dot org @ 2007-02-07 12:16 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from jakub at gcc dot gnu dot org  2007-02-07 12:16 -------
Subject: Bug 30703

Author: jakub
Date: Wed Feb  7 12:16:22 2007
New Revision: 121688

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=121688
Log:
        PR c++/30703
        * gimplify.c (gimplify_scan_omp_clauses): Remove special casing
        of INDIRECT_REF <RESULT_DECL>.

        * cp-gimplify.c (cp_genericize_r): Don't dereference invisiref
        parameters and result decls in omp clauses.
        (cxx_omp_privatize_by_reference): Pass also invisiref PARM_DECLs
        by reference.

        * testsuite/libgomp.c++/pr30703.C: New test.

Added:
    trunk/libgomp/testsuite/libgomp.c++/pr30703.C
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/cp-gimplify.c
    trunk/gcc/gimplify.c
    trunk/libgomp/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30703


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug c++/30703] ICE Segmentation fault on using OpenMP
  2007-02-04 23:09 [Bug libgomp/30703] New: ICE Segmentation fault on using OpenMP bowie dot owens at csiro dot au
                   ` (3 preceding siblings ...)
  2007-02-07 12:16 ` jakub at gcc dot gnu dot org
@ 2007-02-07 13:37 ` jakub at gcc dot gnu dot org
  2007-02-08 23:31 ` jakub at gcc dot gnu dot org
  5 siblings, 0 replies; 7+ messages in thread
From: jakub at gcc dot gnu dot org @ 2007-02-07 13:37 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from jakub at gcc dot gnu dot org  2007-02-07 13:37 -------
Subject: Bug 30703

Author: jakub
Date: Wed Feb  7 13:37:29 2007
New Revision: 121690

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=121690
Log:
        PR c++/30703
        * gimplify.c (gimplify_scan_omp_clauses): Remove special casing
        of INDIRECT_REF <RESULT_DECL>.

        * cp-gimplify.c (cp_genericize_r): Don't dereference invisiref
        parameters and result decls in omp clauses.
        (cxx_omp_privatize_by_reference): Pass also invisiref PARM_DECLs
        by reference.

        * testsuite/libgomp.c++/pr30703.C: New test.

Added:
    branches/gcc-4_2-branch/libgomp/testsuite/libgomp.c++/pr30703.C
Modified:
    branches/gcc-4_2-branch/gcc/ChangeLog
    branches/gcc-4_2-branch/gcc/cp/ChangeLog
    branches/gcc-4_2-branch/gcc/cp/cp-gimplify.c
    branches/gcc-4_2-branch/gcc/gimplify.c
    branches/gcc-4_2-branch/libgomp/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30703


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug c++/30703] ICE Segmentation fault on using OpenMP
  2007-02-04 23:09 [Bug libgomp/30703] New: ICE Segmentation fault on using OpenMP bowie dot owens at csiro dot au
                   ` (4 preceding siblings ...)
  2007-02-07 13:37 ` jakub at gcc dot gnu dot org
@ 2007-02-08 23:31 ` jakub at gcc dot gnu dot org
  5 siblings, 0 replies; 7+ messages in thread
From: jakub at gcc dot gnu dot org @ 2007-02-08 23:31 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from jakub at gcc dot gnu dot org  2007-02-08 23:31 -------
Fixed.


-- 

jakub at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30703


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2007-02-08 23:31 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-02-04 23:09 [Bug libgomp/30703] New: ICE Segmentation fault on using OpenMP bowie dot owens at csiro dot au
2007-02-04 23:12 ` [Bug libgomp/30703] " bowie dot owens at csiro dot au
2007-02-06 10:11 ` [Bug c++/30703] " jakub at gcc dot gnu dot org
2007-02-06 15:02 ` jakub at gcc dot gnu dot org
2007-02-07 12:16 ` jakub at gcc dot gnu dot org
2007-02-07 13:37 ` jakub at gcc dot gnu dot org
2007-02-08 23:31 ` jakub at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).