summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRich Hickey <richhickey@gmail.com>2009-06-24 15:18:22 -0400
committerRich Hickey <richhickey@gmail.com>2009-06-24 15:18:22 -0400
commitff26acc38d33b1cf17adce156a458b7df6588a3e (patch)
treed5a656d27e824c8954f07f1f033a81e5449a1934
parent895b39dabc17b3fd766fdbac3b0757edb0d4b60d (diff)
allow %s not in #(), yields as-is symbol
-rw-r--r--src/jvm/clojure/lang/LispReader.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/jvm/clojure/lang/LispReader.java b/src/jvm/clojure/lang/LispReader.java
index 41a5eb58..5bf22e66 100644
--- a/src/jvm/clojure/lang/LispReader.java
+++ b/src/jvm/clojure/lang/LispReader.java
@@ -607,6 +607,10 @@ static Symbol registerArg(int n){
static class ArgReader extends AFn{
public Object invoke(Object reader, Object pct) throws Exception{
PushbackReader r = (PushbackReader) reader;
+ if(ARG_ENV.deref() == null)
+ {
+ return interpretToken(readToken(r, '%'));
+ }
int ch = r.read();
unread(r, ch);
//% alone is first arg