summaryrefslogtreecommitdiffstats
path: root/contrib/dtc/srcpos.c
diff options
context:
space:
mode:
authorian <ian@FreeBSD.org>2014-05-15 14:37:52 +0000
committerian <ian@FreeBSD.org>2014-05-15 14:37:52 +0000
commit99db57bb75cc9c4ea5cc30cfba3f9cb00b85162c (patch)
tree7021b295bb882c0f95fbe804236e4bc57ce7287f /contrib/dtc/srcpos.c
parent27f0a13f0adbfdb658bb63aac86772e0107c1c20 (diff)
downloadFreeBSD-src-99db57bb75cc9c4ea5cc30cfba3f9cb00b85162c.zip
FreeBSD-src-99db57bb75cc9c4ea5cc30cfba3f9cb00b85162c.tar.gz
MFC r261215, r261257
Merge from vendor branch importing dtc git rev 6a15eb2350426d285130e4c9d84c0bdb6575547a Don't build BSDL dtc if the GPL dtc is enabled.
Diffstat (limited to 'contrib/dtc/srcpos.c')
-rw-r--r--contrib/dtc/srcpos.c43
1 files changed, 17 insertions, 26 deletions
diff --git a/contrib/dtc/srcpos.c b/contrib/dtc/srcpos.c
index 3ee523d..3999675 100644
--- a/contrib/dtc/srcpos.c
+++ b/contrib/dtc/srcpos.c
@@ -159,7 +159,7 @@ void srcfile_push(const char *fname)
current_srcfile = srcfile;
}
-int srcfile_pop(void)
+bool srcfile_pop(void)
{
struct srcfile_state *srcfile = current_srcfile;
@@ -177,7 +177,7 @@ int srcfile_pop(void)
* fix this we could either allocate all the files from a
* table, or use a pool allocator. */
- return current_srcfile ? 1 : 0;
+ return current_srcfile ? true : false;
}
void srcfile_add_search_path(const char *dirname)
@@ -290,41 +290,32 @@ srcpos_string(struct srcpos *pos)
return pos_str;
}
-void
-srcpos_verror(struct srcpos *pos, char const *fmt, va_list va)
+void srcpos_verror(struct srcpos *pos, const char *prefix,
+ const char *fmt, va_list va)
{
- const char *srcstr;
+ char *srcstr;
+
+ srcstr = srcpos_string(pos);
- srcstr = srcpos_string(pos);
+ fprintf(stderr, "%s: %s ", prefix, srcstr);
+ vfprintf(stderr, fmt, va);
+ fprintf(stderr, "\n");
- fprintf(stdout, "Error: %s ", srcstr);
- vfprintf(stdout, fmt, va);
- fprintf(stdout, "\n");
+ free(srcstr);
}
-void
-srcpos_error(struct srcpos *pos, char const *fmt, ...)
+void srcpos_error(struct srcpos *pos, const char *prefix,
+ const char *fmt, ...)
{
va_list va;
va_start(va, fmt);
- srcpos_verror(pos, fmt, va);
+ srcpos_verror(pos, prefix, fmt, va);
va_end(va);
}
-
-void
-srcpos_warn(struct srcpos *pos, char const *fmt, ...)
+void srcpos_set_line(char *f, int l)
{
- const char *srcstr;
- va_list va;
- va_start(va, fmt);
-
- srcstr = srcpos_string(pos);
-
- fprintf(stderr, "Warning: %s ", srcstr);
- vfprintf(stderr, fmt, va);
- fprintf(stderr, "\n");
-
- va_end(va);
+ current_srcfile->name = f;
+ current_srcfile->lineno = l;
}
OpenPOWER on IntegriCloud