CodeQL library for C/C++
codeql/cpp-all 1.1.1 (changelog, source)

Member predicate Type::isDeeplyConst

Holds if this type is constant and only contains constant types. For instance, a char *const is a constant type, but not deeply constant, because while the pointer can’t be modified the character can. The type const char *const* is a deeply constant type though - both the pointer and what it points to are immutable.

predicate isDeeplyConst()