Extra Clang Tools 3.8 documentation

clang-tidy - cppcoreguidelines-pro-type-static-cast-downcast

«  cppcoreguidelines-pro-type-reinterpret-cast   ::   Contents   ::   cppcoreguidelines-pro-type-union-access  »

cppcoreguidelines-pro-type-static-cast-downcast

This check flags all usages of static_cast, where a base class is casted to a derived class. In those cases, a fixit is provided to convert the cast to a dynamic_cast.

Use of these casts can violate type safety and cause the program to access a variable that is actually of type X to be accessed as if it were of an unrelated type Z.

This rule is part of the “Type safety” profile of the C++ Core Guidelines, see https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-downcast.

«  cppcoreguidelines-pro-type-reinterpret-cast   ::   Contents   ::   cppcoreguidelines-pro-type-union-access  »