------- Comment #2 from jakub at gcc dot gnu dot org  2006-04-27 12:22 -------
OMP gimplification and lowering needs to handle RESULT_DECLs.
Simplified testcases e.g.:
struct S
{
  S ();
  ~S ();
  double &operator* () const;
};

S
foo ()
{
  int i;
  S ret;

#pragma omp parallel for
  for (i = 0; i < 2; i++)
    *ret += i;

  return ret;
}

or

struct S
{
  S ();
  ~S ();
  int i;
};

S
foo ()
{
  int i;
  S ret;

#pragma omp parallel for firstprivate (ret) lastprivate (ret)
  for (i = 0; i < 2; i++)
    ret.i += i;

  return ret;
}


-- 

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
          Component|libgomp                     |middle-end
     Ever Confirmed|0                           |1
           Keywords|                            |openmp
   Last reconfirmed|0000-00-00 00:00:00         |2006-04-27 12:22:43
               date|                            |


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

Reply via email to