From aac79ca103ea1b6dee8ba7aefaa17ac462e1261c Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Sat, 22 Feb 2020 20:28:09 +0100 Subject: [PATCH] style: clarify the way state kernels (aka cores) are built Use state_list_append in a more natural way. * src/lr0.c (generate_states): Here. --- src/lr0.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/lr0.c b/src/lr0.c index fc3d0f4d9..3388247d1 100644 --- a/src/lr0.c +++ b/src/lr0.c @@ -392,10 +392,14 @@ generate_states (void) allocate_storage (); closure_new (nritems); - /* Create the initial state. The 0 at the lhs is the index of the - item of this initial rule. */ - item_index initial_core = 0; - state_list_append (0, 1, &initial_core); + /* Create the initial state, whose accessing symbol (by convention) + is 0, aka $end. */ + { + /* The items of its core. */ + kernel_size[0] = 1; + kernel_base[0][0] = 0; + state_list_append (0, kernel_size[0], kernel_base[0]); + } /* States are queued when they are created; process them all. */ for (state_list *list = first_state; list; list = list->next)