9std::string simpleFormat(
const char *Fmt,
10 const std::vector<std::string> &Args) {
12 std::size_t ArgIdx = 0;
13 for (
const char *Cur = Fmt; *Cur;) {
14 if (*Cur ==
'{' && *(Cur + 1) ==
'}') {
29#define DIAG_NOTE(SNAME, CNAME, MESSAGE) \
35 assert(
false &&
"Invalid diagnostic kind");
36 __builtin_unreachable();
41#define DIAG_NOTE(SNAME, CNAME, MESSAGE) \
47 assert(
false &&
"Invalid diagnostic kind");
48 __builtin_unreachable();
52 return simpleFormat(
message(), Args);
const char * message() const override
virtual const char * sname() const
virtual const char * message() const =0
std::string format() const