#include <tools/ccanlint/ccanlint.h>
#include <tools/tools.h>
-#include <ccan/talloc/talloc.h>
-#include <ccan/grab_file/grab_file.h>
#include <ccan/str/str.h>
#include <sys/types.h>
#include <sys/stat.h>
}
static void check_headers_no_cpp(struct manifest *m,
- bool keep,
unsigned int *timeleft, struct score *score)
{
char *contents;
int fd;
struct ccan_file *mainh = main_header(m);
- tmpsrc = maybe_temp_file(m, "-included.c", keep, mainh->fullname);
- tmpobj = maybe_temp_file(m, ".o", keep, tmpsrc);
+ tmpsrc = temp_file(m, "-included.c", mainh->fullname);
+ tmpobj = temp_file(m, ".o", tmpsrc);
/* We don't fail you for this. */
score->pass = true;
if (fd < 0)
err(1, "Creating temporary file %s", tmpsrc);
- contents = talloc_asprintf(tmpsrc,
+ contents = tal_fmt(tmpsrc,
+ "#define alignas #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
"#define class #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
- "#define private #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define constexpr #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define const_cast #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define decltype #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define delete #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define dynamic_cast #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define explicit #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define false #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define friend #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define mutable #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define namespace #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define new #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define nullptr #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define operator #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
"#define public #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define private #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
"#define protected #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define reinterpret_cast #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define static_assert #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define static_cast #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
"#define template #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
"#define this #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
- "#define new #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
- "#define delete #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
- "#define friend #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define thread_local #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define throw #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define true #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define try #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define typeid #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define typename #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define using #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
+ "#define virtual #DONT_USE_CPLUSPLUS_RESERVED_NAMES\n"
"#include <ccan/%s/%s.h>\n",
- m->basename, m->basename);
+ m->modname, m->basename);
if (write(fd, contents, strlen(contents)) != strlen(contents))
err(1, "writing to temporary file %s", tmpsrc);
close(fd);
tmpobj, &cmdout)) {
score->score = score->total;
} else {
- score->error = talloc_asprintf(score,
+ score->error = tal_fmt(score,
"Main header file with C++ names:\n%s",
cmdout);
}