view gcc/testsuite/g++.dg/tree-ssa/empty-loop.C @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 1830386684a0
children
line wrap: on
line source

/* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-cddce2 -ffinite-loops" } */

#include <string>
#include <vector>
#include <list>
#include <set>
#include <map>

using namespace std;

int foo (vector<string> &v, list<string> &l, set<string> &s, map<int, string> &m)
{
  for (vector<string>::iterator it = v.begin (); it != v.end (); ++it)
    it->length();

  for (list<string>::iterator it = l.begin (); it != l.end (); ++it)
    it->length();

  for (map<int, string>::iterator it = m.begin (); it != m.end (); ++it)
    it->first + it->second.length();

  for (set<string>::iterator it0 = s.begin (); it0 != s.end(); ++it0)
    for (vector<string>::reverse_iterator it1 = v.rbegin(); it1 != v.rend(); ++it1)
      {
        it0->length();
        it1->length();
      }  

  return 0;
}
/* { dg-final { scan-tree-dump-not "if" "cddce2"} } */