]> git.proxmox.com Git - mirror_edk2.git/blobdiff - AppPkg/Applications/Python/Python-2.7.2/Parser/firstsets.c
edk2: Remove AppPkg, StdLib, StdLibPrivateInternalFiles
[mirror_edk2.git] / AppPkg / Applications / Python / Python-2.7.2 / Parser / firstsets.c
diff --git a/AppPkg/Applications/Python/Python-2.7.2/Parser/firstsets.c b/AppPkg/Applications/Python/Python-2.7.2/Parser/firstsets.c
deleted file mode 100644 (file)
index 69faf8f..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-\r
-/* Computation of FIRST stets */\r
-\r
-#include "pgenheaders.h"\r
-#include "grammar.h"\r
-#include "token.h"\r
-\r
-extern int Py_DebugFlag;\r
-\r
-/* Forward */\r
-static void calcfirstset(grammar *, dfa *);\r
-\r
-void\r
-addfirstsets(grammar *g)\r
-{\r
-    int i;\r
-    dfa *d;\r
-\r
-    if (Py_DebugFlag)\r
-        printf("Adding FIRST sets ...\n");\r
-    for (i = 0; i < g->g_ndfas; i++) {\r
-        d = &g->g_dfa[i];\r
-        if (d->d_first == NULL)\r
-            calcfirstset(g, d);\r
-    }\r
-}\r
-\r
-static void\r
-calcfirstset(grammar *g, dfa *d)\r
-{\r
-    int i, j;\r
-    state *s;\r
-    arc *a;\r
-    int nsyms;\r
-    int *sym;\r
-    int nbits;\r
-    static bitset dummy;\r
-    bitset result;\r
-    int type;\r
-    dfa *d1;\r
-    label *l0;\r
-\r
-    if (Py_DebugFlag)\r
-        printf("Calculate FIRST set for '%s'\n", d->d_name);\r
-\r
-    if (dummy == NULL)\r
-        dummy = newbitset(1);\r
-    if (d->d_first == dummy) {\r
-        fprintf(stderr, "Left-recursion for '%s'\n", d->d_name);\r
-        return;\r
-    }\r
-    if (d->d_first != NULL) {\r
-        fprintf(stderr, "Re-calculating FIRST set for '%s' ???\n",\r
-            d->d_name);\r
-    }\r
-    d->d_first = dummy;\r
-\r
-    l0 = g->g_ll.ll_label;\r
-    nbits = g->g_ll.ll_nlabels;\r
-    result = newbitset(nbits);\r
-\r
-    sym = (int *)PyObject_MALLOC(sizeof(int));\r
-    if (sym == NULL)\r
-        Py_FatalError("no mem for new sym in calcfirstset");\r
-    nsyms = 1;\r
-    sym[0] = findlabel(&g->g_ll, d->d_type, (char *)NULL);\r
-\r
-    s = &d->d_state[d->d_initial];\r
-    for (i = 0; i < s->s_narcs; i++) {\r
-        a = &s->s_arc[i];\r
-        for (j = 0; j < nsyms; j++) {\r
-            if (sym[j] == a->a_lbl)\r
-                break;\r
-        }\r
-        if (j >= nsyms) { /* New label */\r
-            sym = (int *)PyObject_REALLOC(sym,\r
-                                    sizeof(int) * (nsyms + 1));\r
-            if (sym == NULL)\r
-                Py_FatalError(\r
-                    "no mem to resize sym in calcfirstset");\r
-            sym[nsyms++] = a->a_lbl;\r
-            type = l0[a->a_lbl].lb_type;\r
-            if (ISNONTERMINAL(type)) {\r
-                d1 = PyGrammar_FindDFA(g, type);\r
-                if (d1->d_first == dummy) {\r
-                    fprintf(stderr,\r
-                        "Left-recursion below '%s'\n",\r
-                        d->d_name);\r
-                }\r
-                else {\r
-                    if (d1->d_first == NULL)\r
-                        calcfirstset(g, d1);\r
-                    mergebitset(result,\r
-                                d1->d_first, nbits);\r
-                }\r
-            }\r
-            else if (ISTERMINAL(type)) {\r
-                addbit(result, a->a_lbl);\r
-            }\r
-        }\r
-    }\r
-    d->d_first = result;\r
-    if (Py_DebugFlag) {\r
-        printf("FIRST set for '%s': {", d->d_name);\r
-        for (i = 0; i < nbits; i++) {\r
-            if (testbit(result, i))\r
-                printf(" %s", PyGrammar_LabelRepr(&l0[i]));\r
-        }\r
-        printf(" }\n");\r
-    }\r
-\r
-    PyObject_FREE(sym);\r
-}\r