ref: bf24b946be8f54d58030fe143453b269175b3461
parent: a8935c73459f261ab58b80d4c3936910181813cd
author: Ori Bernstein <ori@eigenstate.org>
date: Sun Jan 24 18:38:37 EST 2016
Handle the other branch for pointers.
--- a/mi/match.c
+++ b/mi/match.c
@@ -341,8 +341,13 @@
break;
case Typtr:
/* we only want to descend if there's something to match here. */
- if (start->any || start->nnext > 0)
+ if (start->any || start->nnext > 0) {
ret = addwildrec(loc, ty->sub[0], start, accept, &last, &nlast);
+ } else if (!start->any) {
+ start->any = accept;
+ lappend(end, nend, accept);
+ return 1;
+ }
break;
default:
ret = 1;