Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • D dune-grid
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 46
    • Issues 46
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 23
    • Merge requests 23
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Core ModulesCore Modules
  • dune-grid
  • Merge requests
  • !431

Always terminate checkIndexSet tmp loop on level 0.

  • Review changes

  • Download
  • Email patches
  • Plain diff
Open Markus Blatt requested to merge bugfix/always-terminate-checkindex-tmp-loop into master Aug 10, 2020
  • Overview 4
  • Commits 1
  • Pipelines 2
  • Changes 1

Even if neither hasEntity<0> nore hasEntityIterator<0> is true.

I just had experienced a grid missing the implementation of Dune::Capabilities::hasEntityIterator which resulted in the loop never terminating and a compiler error like:

In file included from /home/mblatt/src/dune/opm-master/dune-grid/dune/grid/test/gridcheck.hh:24,
                 from /home/mblatt/src/dune/opm-master/opm-grid/tests/test_polyhedralgrid.cpp:16:
/home/mblatt/src/dune/opm-master/dune-grid/dune/grid/test/checkindexset.hh: In instantiation of ‘static void Dune::CheckIndexSet<Grid, GridView, OutputStream, codim, false>::checkIndexSet(const Grid&, const GridView&, OutputStream&, bool) [with Grid = Dune::PolyhedralGrid<3, 3>; GridView = Dune::GridView<Dune::PolyhedralGridViewTraits<3, 3, double, (Dune::PartitionIteratorType)4> >; OutputStream = Dune::DebugStream<1, 4>; int codim = -894]’:
/home/mblatt/src/dune/opm-master/dune-grid/dune/grid/test/checkindexset.hh:539:23:   recursively required from ‘static void Dune::CheckIndexSet<Grid, GridView, OutputStream, codim, false>::checkIndexSet(const Grid&, const GridView&, OutputStream&, bool) [with Grid = Dune::PolyhedralGrid<3, 3>; GridView = Dune::GridView<Dune::PolyhedralGridViewTraits<3, 3, double, (Dune::PartitionIteratorType)4> >; OutputStream = Dune::DebugStream<1, 4>; int codim = 1]’
/home/mblatt/src/dune/opm-master/dune-grid/dune/grid/test/checkindexset.hh:539:23:   required from ‘static void Dune::CheckIndexSet<Grid, GridView, OutputStream, codim, false>::checkIndexSet(const Grid&, const GridView&, OutputStream&, bool) [with Grid = Dune::PolyhedralGrid<3, 3>; GridView = Dune::GridView<Dune::PolyhedralGridViewTraits<3, 3, double, (Dune::PartitionIteratorType)4> >; OutputStream = Dune::DebugStream<1, 4>; int codim = 2]’
/home/mblatt/src/dune/opm-master/dune-grid/dune/grid/test/checkindexset.hh:524:23:   required from ‘static void Dune::CheckIndexSet<Grid, GridView, OutputStream, codim, hasCodim>::checkIndexSet(const Grid&, const GridView&, OutputStream&, bool) [with Grid = Dune::PolyhedralGrid<3, 3>; GridView = Dune::GridView<Dune::PolyhedralGridViewTraits<3, 3, double, (Dune::PartitionIteratorType)4> >; OutputStream = Dune::DebugStream<1, 4>; int codim = 3; bool hasCodim = true]’
/home/mblatt/src/dune/opm-master/dune-grid/dune/grid/test/checkindexset.hh:558:22:   required from ‘void Dune::checkIndexSet(const Grid&, const GridView&, OutputStream&, bool) [with Grid = Dune::PolyhedralGrid<3, 3>; GridView = Dune::GridView<Dune::PolyhedralGridViewTraits<3, 3, double, (Dune::PartitionIteratorType)4> >; OutputStream = Dune::DebugStream<1, 4>]’
/home/mblatt/src/dune/opm-master/dune-grid/dune/grid/test/gridcheck.hh:1027:24:   required from ‘void gridcheck(Grid&) [with Grid = Dune::PolyhedralGrid<3, 3>]’
/home/mblatt/src/dune/opm-master/opm-grid/tests/test_polyhedralgrid.cpp:289:25:   required from here
/home/mblatt/src/dune/opm-master/dune-grid/dune/grid/test/checkindexset.hh:535:40: fatal error: template instantiation depth exceeds maximum of 900 (use -ftemplate-depth= to increase the maximum)
       derr << "WARNING: Entities for codim " << codim
       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            << " are not being tested!" << std::endl;
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
compilation terminated.
make[3]: *** [CMakeFiles/test_polyhedralgrid.dir/build.make:63: CMakeFiles/test_polyhedralgrid.dir/tests/test_polyhedralgrid.cpp.o] Fehler 1
make[2]: *** [CMakeFiles/Makefile2:258: CMakeFiles/test_polyhedralgrid.dir/all] Fehler 2
make[1]: *** [CMakeFiles/Makefile2:270: CMakeFiles/test_polyhedralgrid.dir/rule] Fehler 2
make: *** [Makefile:240: test_polyhedralgrid] Fehler 2
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: bugfix/always-terminate-checkindex-tmp-loop