-
Notifications
You must be signed in to change notification settings - Fork 14.6k
Closed
Labels
Description
Given following .clang-format
file:
AlignArrayOfStructures: Left
And following foo.cpp
file:
#include <array>
#include <list>
#include <string>
struct Language {
std::array<char, 2> code = {};
std::u32string name;
};
using Languages = std::list<Language>;
Languages languages = {
Language{{'e', 'n'}, U"Test English" },
Language{{'l', 'v'}, U"Test Latviešu"},
Language{{'r', 'u'}, U"Test Русский" },
};
I expect that clang-format foo.cpp will not perform formatting, however, it does:
#include <array>
#include <list>
#include <string>
struct Language {
std::array<char, 2> code = {};
std::u32string name;
};
using Languages = std::list<Language>;
Languages languages = {
Language{{'e', 'n'}, U"Test English" },
Language{{'l', 'v'}, U"Test Latviešu" },
Language{{'r', 'u'}, U"Test Русский"},
};
If I remove the UTF-32 characters, then formatting happens as expected:
#include <array>
#include <list>
#include <string>
struct Language {
std::array<char, 2> code = {};
std::u32string name;
};
using Languages = std::list<Language>;
Languages languages = {
Language{{'e', 'n'}, U"Test English"},
Language{{'l', 'v'}, U"Test Latvian"},
Language{{'r', 'u'}, U"Test Russian"},
};
clang-format
version:
$ clang-format --version
Ubuntu clang-format version 18.0.0 (++20231208042253+5fc76e6b6da7-1~exp1~20231208042409.1357)