Skip to content

The suffix for string literals is declared inconsistently with its definition #12

@YexuanXiao

Description

@YexuanXiao

I noticed that in lines L77-L81, the suffix are declared without an underscore prefix, but in lines L321-L333, they are defined with an underscore prefix. As a result, the former cannot be used. Is this intentional?

// [cstring.view.literals], suffix for basic_cstring_view literals
constexpr cstring_view operator"" csv(const char* str, size_t len) noexcept;
constexpr u8cstring_view operator"" csv(const char8_t* str, size_t len) noexcept;
constexpr u16cstring_view operator"" csv(const char16_t* str, size_t len) noexcept;
constexpr u32cstring_view operator"" csv(const char32_t* str, size_t len) noexcept;
constexpr wcstring_view operator"" csv(const wchar_t* str, size_t len) noexcept;

// [cstring.view.literals], suffix for basic_cstring_view literals
constexpr cstring_view operator""_csv(const char* str, size_t len) noexcept { return basic_cstring_view(str, len); }
constexpr u8cstring_view operator""_csv(const char8_t* str, size_t len) noexcept {
return basic_cstring_view(str, len);
}
constexpr u16cstring_view operator""_csv(const char16_t* str, size_t len) noexcept {
return basic_cstring_view(str, len);
}
constexpr u32cstring_view operator""_csv(const char32_t* str, size_t len) noexcept {
return basic_cstring_view(str, len);
}
constexpr wcstring_view operator""_csv(const wchar_t* str, size_t len) noexcept {
return basic_cstring_view(str, len);
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions