Skip to content

fix -Winjected-class-name warnings in Clang

akbib requested to merge fix_inject_classname_warning into master

When compiling with Clang 5.0.1 one gets two warnings about nested type specifiers that were probably not intended to be there in the first place. The first one is asking a *_t type trait for ::type and the second one is asking for Entity::Entity.

The exact warnings given by Clang were:

/duneci/modules/dune-subgrid/dune/subgrid/common/variant.hh:31:66: warning: ISO C++ specifies that qualified reference to 'type' is a constructor name rather than a type in this context, despite preceding 'typename' keyword [-Winjected-class-name] using Storage = typename std::aligned_storage_t<sizeof(Tp)>::type; ^

/duneci/modules/dune-subgrid/dune/subgrid/subgrid.hh:1190:67: warning: ISO C++ specifies that qualified reference to 'Entity' is a constructor name rather than a type in this context, despite preceding 'typename' keyword [-Winjected-class-name] typedef typename HostGrid::template Codim<0>::Entity::Entity HostGridElement; ^

Merge request reports