diff --git a/src/lib_parser/data/parser/cxx/name_resolver/CxxTypeNameResolver.cpp b/src/lib_parser/data/parser/cxx/name_resolver/CxxTypeNameResolver.cpp index 34940b8c..2a14aeed 100644 --- a/src/lib_parser/data/parser/cxx/name_resolver/CxxTypeNameResolver.cpp +++ b/src/lib_parser/data/parser/cxx/name_resolver/CxxTypeNameResolver.cpp @@ -177,8 +177,17 @@ std::shared_ptr CxxTypeNameResolver::typeToDataType(const clang::Type* } case clang::Type::Auto: { - const clang::AutoType* autoType = clang::dyn_cast(type); - dataType = qualTypeToDataType(autoType->getDeducedType()); + clang::QualType deducedType = clang::dyn_cast(type)->getDeducedType(); + if (!deducedType.isNull()) + { + dataType = qualTypeToDataType(deducedType); + } + else + { + NameHierarchy typeNameHerarchy; + typeNameHerarchy.push(std::make_shared("auto")); + dataType = std::make_shared(typeNameHerarchy); + } break; } case clang::Type::Decltype: