5#include <absl/container/flat_hash_map.h>
6#include <absl/container/flat_hash_set.h>
14namespace fs = std::filesystem;
23template<
class T = std::logic_error,
class... Args> [[noreturn]]
void error(Loc loc,
const char*
fmt, Args&&... args) {
25 print(o,
"{}: error: ", loc);
26 print(o,
fmt, std::forward<Args&&>(args)...);
void error(const Def *def, const char *fmt, Args &&... args)
std::ostream & print(std::ostream &os, const char *s)
Base case.
std::string fmt(const char *s, Args &&... args)
Wraps thorin::print to output a formatted std:string.