llvm/llvm-project

clang-tidy check readability-container-data-pointer fix isn't configurable to use std::string::c_str() instead of data()

Open

#55,026 创建于 2022年4月21日

在 GitHub 查看
 (12 评论) (0 反应) (0 负责人)C++ (10,782 fork)batch import
clang-tidyenhancementgood first issue

仓库指标

Star
 (26,378 star)
PR 合并指标
 (平均合并 1天 2小时) (30 天内合并 1,000 个 PR)

描述

This is an "enhancement" request. I used clang-tidy 14.0.0.

Use C++ code

#include <string>

int main()
{
    std::string st1;
    char *cp1 = &st1[0];
    return 0;
}

The clang-tidy fix creates st1.data() -- ideally the fix would create std.c_str() instead or have a fix configuration option for that.

However, usage of c_str() would only work if the "const char* data()" overload were used instead of "char * data()".

贡献者指南