diff --git a/libc3/env.c b/libc3/env.c
index ad006cf..46d15f0 100644
--- a/libc3/env.c
+++ b/libc3/env.c
@@ -662,8 +662,16 @@ bool env_eval_quote (s_env *env, const s_quote *quote, s_tag *dest)
assert(env);
assert(quote);
assert(dest);
+ return env_eval_quote_tag(env, quote->tag, dest);
+}
+
+bool env_eval_quote_tag (s_env *env, const s_tag *tag, s_tag *dest)
+{
+ assert(env);
+ assert(tag);
+ assert(dest);
(void) env;
- if (! tag_init_copy(dest, quote->tag))
+ if (! tag_init_copy(dest, tag))
return false;
return true;
}
diff --git a/libc3/env.h b/libc3/env.h
index 4e13a06..39976c8 100644
--- a/libc3/env.h
+++ b/libc3/env.h
@@ -57,6 +57,8 @@ bool env_eval_progn (s_env *env, const s_list *program,
s_tag *dest);
bool env_eval_quote (s_env *env, const s_quote *quote,
s_tag *dest);
+bool env_eval_quote_tag (s_env *env, const s_tag *tag,
+ s_tag *dest);
bool env_eval_struct (s_env *env, const s_struct *s,
s_tag *dest);
bool env_eval_tag (s_env *env, const s_tag *tag,