return strcmp(m->dir, dir) == 0;
}
-HTABLE_DEFINE_TYPE(struct manifest, manifest_name, dir_hash, dir_cmp,
- htable_manifest);
+HTABLE_DEFINE_NODUPS_TYPE(struct manifest, manifest_name, dir_hash, dir_cmp,
+ htable_manifest);
static struct htable_manifest *manifests;
const char *get_ccan_file_contents(struct ccan_file *f)
if (!m->info_file
&& list_empty(&m->c_files)
&& list_empty(&m->h_files))
- errx(1, "No _info, C or H files found here!");
+ errx(1, "No _info, C or H files found in %s", thisdir);
/* Don't enter subdirs with _info: they're separate modules. */
for (i = 0; i < tal_count(subs); i++) {
}
static int cmp_names(struct ccan_file *const *a, struct ccan_file *const *b,
- void *unused)
+ void *unused UNNEEDED)
{
return strcmp((*a)->name, (*b)->name);
}