Testcase:
double u[1782225];
int foo(int N, int *res)
{
  unsigned int i, j;
  double sum = 0;
      for (i = 0; i < N; i++)
        {
          for (j = 0; j < N; j++)
            {
              sum = sum + u[i + 1335 * j];
            }
        }
      *res = sum + N;
}

Patch in PR 22368 finds this.
ltrans-3.c: In function 'foo':
ltrans-3.c:6: error: statement types mismatch
lletmp.14D.1311_31 = 0;

unsigned intD.3
intD.0

-- 
           Summary: loop linear produces type mis-match
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: pinskia at gcc dot gnu dot org
                CC: dberlin at gcc dot gnu dot org,gcc-bugs at gcc dot gnu
                    dot org
OtherBugsDependingO 22368
             nThis:


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

Reply via email to