#1390 GridDefaultImplementation conflicts with natively implement grid views
Metadata
Property | Value |
---|---|
Reported by | Christoph Grüninger (gruenich@iws.uni-stuttgart.de) |
Reported at | Nov 16, 2013 21:44 |
Type | Bug Report |
Version | Git (pre2.4) [autotools] |
Operating System | Unspecified / All |
Last edited by | Markus Blatt (markus@dr-blatt.de) |
Last edited at | Nov 28, 2013 11:45 |
Closed by | Markus Blatt (markus@dr-blatt.de) |
Closed at | Nov 28, 2013 11:45 |
Closed in version | 2.3 |
Resolution | Fixed |
Comment | in master 25c8752624a8f235765715a2cb3489b97131b1c3 |
in releases/2.3 we reverted Olivers patch that introduced this problem. Thus the interface stays backwards compatible. |
Description
test-geogrid fails in the new LeafGridView code of the GridDefaultImplementation, see compiler output below.
In file included from test-geogrid.cc:4:
In file included from ../../../config.h:354:
In file included from ../../../dune/grid/yaspgrid.hh:18:
../../../dune/grid/common/grid.hh:1058:19: error: no matching conversion for
functional-style cast from 'const GridImp' (aka 'const
GeometryGrid<Dune::YaspGrid<2>, Dune::IdenticalCoordFunction<double, 2>,
std::allocator<void>
') to 'ViewImp' (aka 'GridView<HostGridView,
Dune::IdenticalCoordFunction<double, 2>, std::allocator<void>,
(Dune::PartitionIteratorType)4U>')
return View(ViewImp(asImp()));
^~~~~~~~~~~~~~~
./gridcheck.cc:598:33: note: in instantiation of member function
'Dune::GridDefaultImplementation<2, 2, double,
Dune::GeoGrid::GridFamily<Dune::YaspGrid<2>,
Dune::IdenticalCoordFunction<double, 2>, std::allocator<void>
>::leafView' requested here
LeafGridView leafGridView = g.leafView();
^
./gridcheck.cc:886:3: note: in instantiation of function template specialization
'iteratorEquals<Dune::GeometryGrid<Dune::YaspGrid<2>,
Dune::IdenticalCoordFunction<double, 2>, std::allocator<void> > >'
requested here
iteratorEquals(g);
^
test-geogrid.cc:84:3: note: in instantiation of function template specialization
'gridcheck<Dune::GeometryGrid<Dune::YaspGrid<2>,
Dune::IdenticalCoordFunction<double, 2>, std::allocator<void> > >'
requested here
gridcheck( geogrid );
^
test-geogrid.cc:131:3: note: in instantiation of function template
specialization 'test<Dune::GeometryGrid<Dune::YaspGrid<2>,
Dune::IdenticalCoordFunction<double, 2>, std::allocator<void> > >'
requested here
test<GeometryGrid>(gridfile);
^
../../../dune/grid/geometrygrid/gridview.hh:27:11: note: candidate constructor
(the implicit copy constructor) not viable: no known conversion from
'const GridImp' (aka 'const GeometryGrid<Dune::YaspGrid<2>,
Dune::IdenticalCoordFunction<double, 2>, std::allocator<void>
') to 'const
Dune::GeoGrid::GridView<Dune::GridView<Dune::DefaultLeafGridViewTraits<const
Dune::YaspGrid<2>, 4> >, Dune::IdenticalCoordFunction<double, 2>,
std::allocator<void>, 4>' for 1st argument
class GridView;
^
../../../dune/grid/geometrygrid/gridview.hh:115:7: note: candidate constructor
not viable: requires 2 arguments, but 1 was provided
GridView ( const Grid &grid, const HostGridView &hostGridView )