X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/166366b28f579dfb991f8f6fca323847bcc1eb65..d0d3313d10a28aa6fe77f158d61b84424aa9b3ce:/src/AnnotationList.h
diff --git a/src/AnnotationList.h b/src/AnnotationList.h
index 02d4a2be..3088a83f 100644
--- a/src/AnnotationList.h
+++ b/src/AnnotationList.h
@@ -1,6 +1,6 @@
/* IELR's inadequacy annotation list.
- Copyright (C) 2009 Free Software Foundation, Inc.
+ Copyright (C) 2009-2012 Free Software Foundation, Inc.
This file is part of Bison, the GNU Compiler Compiler.
@@ -82,6 +82,15 @@ typedef struct AnnotationList
* computed by \c ielr_compute_auxiliary_tables.
* - The size of each of \c annotation_lists and \c annotation_counts is
* \c ::nstates.
+ * - If no \c InadequacyList nodes are currently allocated for the
+ * parser tables to which \c s belongs, then it is best if
+ * *inadequacy_list_node_count is zero to avoid overflow.
+ * Otherwise, *inadequacy_list_node_count has not been
+ * modified by any function except
+ * \c AnnotationList__compute_from_inadequacies since the invocation
+ * of \c AnnotationList__compute_from_inadequacies that constructed
+ * the first of the \c InadequacyList nodes currently allocated for
+ * those parser tables.
* \post
* - inadequacy_lists[s->number] now describes all inadequacies that
* manifest in \c s.
@@ -97,18 +106,14 @@ typedef struct AnnotationList
* \c annotations_obstackp.
*/
void
-AnnotationList__compute_from_inadequacies (state *s,
- bitsetv follow_kernel_items,
- bitsetv always_follows,
- state ***predecessors,
- bitset **item_lookahead_sets,
- InadequacyList **inadequacy_lists,
- AnnotationList **annotation_lists,
- AnnotationIndex *annotation_counts,
- ContributionIndex
- *max_contributionsp,
- struct obstack
- *annotations_obstackp);
+AnnotationList__compute_from_inadequacies (
+ state *s, bitsetv follow_kernel_items, bitsetv always_follows,
+ state ***predecessors, bitset **item_lookahead_sets,
+ InadequacyList **inadequacy_lists, AnnotationList **annotation_lists,
+ AnnotationIndex *annotation_counts,
+ ContributionIndex *max_contributionsp,
+ struct obstack *annotations_obstackp,
+ InadequacyListNodeCount *inadequacy_list_node_count);
/**
* \pre