summaryrefslogtreecommitdiffstats
path: root/parser.y
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2018-03-09 06:33:06 -0800
committerKaz Kylheku <kaz@kylheku.com>2018-03-09 06:33:06 -0800
commit07f130dd4f0a3a78a312c7b3dc14b0ae9e4049b3 (patch)
tree274e22b42df392304480797666d577e92650af37 /parser.y
parent55432c44257c340b7dc6ba565e49d6b584a9692c (diff)
downloadtxr-07f130dd4f0a3a78a312c7b3dc14b0ae9e4049b3.tar.gz
txr-07f130dd4f0a3a78a312c7b3dc14b0ae9e4049b3.tar.bz2
txr-07f130dd4f0a3a78a312c7b3dc14b0ae9e4049b3.zip
packages: drop no-fallback-list interning restriction.
Removing the restriction that qualified pkg:sym syntax may not cause interning to take place if pkg has a nonempty fallback list. This serves no purpose, only hindering the flexibility of the package system. * parser.y (sym_helper): When processing a qualified symbol, if the package exists, just intern it. * txr.1: Revise all text which touched on the removed rule, to remove all traces of it from the documentation.
Diffstat (limited to 'parser.y')
-rw-r--r--parser.y15
1 files changed, 1 insertions, 14 deletions
diff --git a/parser.y b/parser.y
index fadf1dcd..595bf8ff 100644
--- a/parser.y
+++ b/parser.y
@@ -1351,20 +1351,7 @@ static val sym_helper(parser_t *parser, wchar_t *lexeme, val meta_allowed)
pkg_name, sym_name, pkg_name, nao);
return nil;
}
-
- sym = find_symbol(sym_name, package);
-
- if (sym == zero) {
- if (!package_fallback_list(package)) {
- sym = intern(sym_name, package);
- } else {
- yyerrorf(scnr, lit("~a:~a: cannot intern symbol using qualified symbol syntax,"),
- pkg_name, sym_name, nao);
- yyerrorf(scnr, lit("~a:~a: because package ~a has a fallback list"),
- pkg_name, sym_name, pkg_name, nao);
- return nil;
- }
- }
+ sym = intern(sym_name, package);
}
} else {
val sym_name = string(lexeme);