summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2018-11-07 06:34:08 -0800
committerKaz Kylheku <kaz@kylheku.com>2018-11-07 06:34:08 -0800
commit01d9bb460e8eb76c47cdf3982dd235fe370ff137 (patch)
tree7483978aef5b2f269d5eca63fdcefa0b38916e53
parent1fa1eb6201a277b037f047214c4a97f34a6aeba2 (diff)
downloadtxr-01d9bb460e8eb76c47cdf3982dd235fe370ff137.tar.gz
txr-01d9bb460e8eb76c47cdf3982dd235fe370ff137.tar.bz2
txr-01d9bb460e8eb76c47cdf3982dd235fe370ff137.zip
symbol_needs_prefix: take function name argument.
* lib.c (symbol_needs_prefix): New parameter. (unquote_star_check, obj_print_impl): Pass Lisp function name to symbol_needs_prefix. * lib.h (symbol_needs_prefix): Declaration updated.
-rw-r--r--lib.c6
-rw-r--r--lib.h2
2 files changed, 4 insertions, 4 deletions
diff --git a/lib.c b/lib.c
index 506905af..1c824f6c 100644
--- a/lib.c
+++ b/lib.c
@@ -5447,7 +5447,7 @@ val symbol_visible(val package, val sym)
/* symbol_needs_prefix assumes the perspective that package
* is the current package!
*/
-val symbol_needs_prefix(val package, val sym)
+val symbol_needs_prefix(val self, val package, val sym)
{
val name = symbol_name(sym);
type_check (package, PKG);
@@ -11017,7 +11017,7 @@ static int unquote_star_check(val obj, val pretty)
return 0;
if (car(obj->s.name) != chr('*'))
return 0;
- return pretty || !symbol_needs_prefix(cur_package, obj);
+ return pretty || !symbol_needs_prefix(lit("print"), cur_package, obj);
}
val obj_print_impl(val obj, val out, val pretty, struct strm_ctx *ctx)
@@ -11284,7 +11284,7 @@ dot:
put_string(lit("#:"), out);
} else if (obj->s.package == keyword_package) {
put_char(chr(':'), out);
- } else if (symbol_needs_prefix(cur_package, obj)) {
+ } else if (symbol_needs_prefix(lit("print"), cur_package, obj)) {
put_string(obj->s.package->pk.name, out);
put_char(chr(':'), out);
}
diff --git a/lib.h b/lib.h
index 3e991592..0868d31c 100644
--- a/lib.h
+++ b/lib.h
@@ -850,7 +850,7 @@ val unuse_sym(val symbol, val package);
val use_package(val use_list, val package);
val unuse_package(val unuse_list, val package);
val symbol_visible(val package, val sym);
-val symbol_needs_prefix(val package, val sym);
+val symbol_needs_prefix(val self, val package, val sym);
val find_symbol(val str, val package);
val intern(val str, val package);
val unintern(val sym, val package);