PostGIS  2.5.0dev-r@@SVN_REVISION@@
int yyparse ( void  )

Definition at line 1656 of file lwin_wkt_parse.c.

References COLLECTIONTYPE, COMPOUNDTYPE, YYSTYPE::coordinatevalue, YYSTYPE::geometryvalue, MULTICURVETYPE, MULTILINETYPE, MULTIPOINTTYPE, MULTIPOLYGONTYPE, MULTISURFACETYPE, POLYHEDRALSURFACETYPE, YYSTYPE::ptarrayvalue, SRID_UNKNOWN, TINTYPE, WKT_ERROR, wkt_parser_circularstring_new(), wkt_parser_collection_add_geom(), wkt_parser_collection_finalize(), wkt_parser_collection_new(), wkt_parser_compound_add_geom(), wkt_parser_compound_new(), wkt_parser_coord_2(), wkt_parser_coord_3(), wkt_parser_coord_4(), wkt_parser_curvepolygon_add_ring(), wkt_parser_curvepolygon_finalize(), wkt_parser_curvepolygon_new(), wkt_parser_geometry_new(), wkt_parser_linestring_new(), wkt_parser_point_new(), wkt_parser_polygon_add_ring(), wkt_parser_polygon_finalize(), wkt_parser_polygon_new(), wkt_parser_ptarray_add_coord(), wkt_parser_ptarray_new(), wkt_parser_triangle_new(), YY_, YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN, YY_IGNORE_MAYBE_UNINITIALIZED_END, YY_REDUCE_PRINT, YY_STACK_PRINT, YY_SYMBOL_PRINT, YYABORT, YYACCEPT, yycheck, yydefact, yydefgoto, yydestruct(), YYDPRINTF, YYEMPTY, YYEOF, yyerror, YYFINAL, YYINITDEPTH, YYLAST, yylex, yylloc, YYLLOC_DEFAULT, yyalloc::yyls_alloc, yylval, YYMAXDEPTH, yynerrs, YYNTOKENS, yypact, yypact_value_is_default, yypgoto, YYPOPSTACK, yyr1, yyr2, YYSIZE_T, yyalloc::yyss_alloc, YYSTACK_ALLOC, YYSTACK_BYTES, YYSTACK_FREE, YYSTACK_RELOCATE, yystos, YYSYNTAX_ERROR, yytable, yytable_value_is_error, YYTERROR, YYTRANSLATE, and yyalloc::yyvs_alloc.

1657 {
1658  int yystate;
1659  /* Number of tokens to shift before error messages enabled. */
1660  int yyerrstatus;
1661 
1662  /* The stacks and their tools:
1663  'yyss': related to states.
1664  'yyvs': related to semantic values.
1665  'yyls': related to locations.
1666 
1667  Refer to the stacks through separate pointers, to allow yyoverflow
1668  to reallocate them elsewhere. */
1669 
1670  /* The state stack. */
1671  yytype_int16 yyssa[YYINITDEPTH];
1672  yytype_int16 *yyss;
1673  yytype_int16 *yyssp;
1674 
1675  /* The semantic value stack. */
1676  YYSTYPE yyvsa[YYINITDEPTH];
1677  YYSTYPE *yyvs;
1678  YYSTYPE *yyvsp;
1679 
1680  /* The location stack. */
1681  YYLTYPE yylsa[YYINITDEPTH];
1682  YYLTYPE *yyls;
1683  YYLTYPE *yylsp;
1684 
1685  /* The locations where the error started and ended. */
1686  YYLTYPE yyerror_range[3];
1687 
1688  YYSIZE_T yystacksize;
1689 
1690  int yyn;
1691  int yyresult;
1692  /* Lookahead token as an internal (translated) token number. */
1693  int yytoken = 0;
1694  /* The variables used to return semantic value and location from the
1695  action routines. */
1696  YYSTYPE yyval;
1697  YYLTYPE yyloc;
1698 
1699 #if YYERROR_VERBOSE
1700  /* Buffer for error messages, and its allocated size. */
1701  char yymsgbuf[128];
1702  char *yymsg = yymsgbuf;
1703  YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
1704 #endif
1705 
1706 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
1707 
1708  /* The number of symbols on the RHS of the reduced rule.
1709  Keep to zero when no symbol should be popped. */
1710  int yylen = 0;
1711 
1712  yyssp = yyss = yyssa;
1713  yyvsp = yyvs = yyvsa;
1714  yylsp = yyls = yylsa;
1715  yystacksize = YYINITDEPTH;
1716 
1717  YYDPRINTF ((stderr, "Starting parse\n"));
1718 
1719  yystate = 0;
1720  yyerrstatus = 0;
1721  yynerrs = 0;
1722  yychar = YYEMPTY; /* Cause a token to be read. */
1723  yylsp[0] = yylloc;
1724  goto yysetstate;
1725 
1726 /*------------------------------------------------------------.
1727 | yynewstate -- Push a new state, which is found in yystate. |
1728 `------------------------------------------------------------*/
1729  yynewstate:
1730  /* In all cases, when you get here, the value and location stacks
1731  have just been pushed. So pushing a state here evens the stacks. */
1732  yyssp++;
1733 
1734  yysetstate:
1735  *yyssp = yystate;
1736 
1737  if (yyss + yystacksize - 1 <= yyssp)
1738  {
1739  /* Get the current used size of the three stacks, in elements. */
1740  YYSIZE_T yysize = yyssp - yyss + 1;
1741 
1742 #ifdef yyoverflow
1743  {
1744  /* Give user a chance to reallocate the stack. Use copies of
1745  these so that the &'s don't force the real ones into
1746  memory. */
1747  YYSTYPE *yyvs1 = yyvs;
1748  yytype_int16 *yyss1 = yyss;
1749  YYLTYPE *yyls1 = yyls;
1750 
1751  /* Each stack pointer address is followed by the size of the
1752  data in use in that stack, in bytes. This used to be a
1753  conditional around just the two extra args, but that might
1754  be undefined if yyoverflow is a macro. */
1755  yyoverflow (YY_("memory exhausted"),
1756  &yyss1, yysize * sizeof (*yyssp),
1757  &yyvs1, yysize * sizeof (*yyvsp),
1758  &yyls1, yysize * sizeof (*yylsp),
1759  &yystacksize);
1760 
1761  yyls = yyls1;
1762  yyss = yyss1;
1763  yyvs = yyvs1;
1764  }
1765 #else /* no yyoverflow */
1766 # ifndef YYSTACK_RELOCATE
1767  goto yyexhaustedlab;
1768 # else
1769  /* Extend the stack our own way. */
1770  if (YYMAXDEPTH <= yystacksize)
1771  goto yyexhaustedlab;
1772  yystacksize *= 2;
1773  if (YYMAXDEPTH < yystacksize)
1774  yystacksize = YYMAXDEPTH;
1775 
1776  {
1777  yytype_int16 *yyss1 = yyss;
1778  union yyalloc *yyptr =
1779  (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
1780  if (! yyptr)
1781  goto yyexhaustedlab;
1782  YYSTACK_RELOCATE (yyss_alloc, yyss);
1783  YYSTACK_RELOCATE (yyvs_alloc, yyvs);
1784  YYSTACK_RELOCATE (yyls_alloc, yyls);
1785 # undef YYSTACK_RELOCATE
1786  if (yyss1 != yyssa)
1787  YYSTACK_FREE (yyss1);
1788  }
1789 # endif
1790 #endif /* no yyoverflow */
1791 
1792  yyssp = yyss + yysize - 1;
1793  yyvsp = yyvs + yysize - 1;
1794  yylsp = yyls + yysize - 1;
1795 
1796  YYDPRINTF ((stderr, "Stack size increased to %lu\n",
1797  (unsigned long int) yystacksize));
1798 
1799  if (yyss + yystacksize - 1 <= yyssp)
1800  YYABORT;
1801  }
1802 
1803  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
1804 
1805  if (yystate == YYFINAL)
1806  YYACCEPT;
1807 
1808  goto yybackup;
1809 
1810 /*-----------.
1811 | yybackup. |
1812 `-----------*/
1813 yybackup:
1814 
1815  /* Do appropriate processing given the current state. Read a
1816  lookahead token if we need one and don't already have one. */
1817 
1818  /* First try to decide what to do without reference to lookahead token. */
1819  yyn = yypact[yystate];
1820  if (yypact_value_is_default (yyn))
1821  goto yydefault;
1822 
1823  /* Not known => get a lookahead token if don't already have one. */
1824 
1825  /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
1826  if (yychar == YYEMPTY)
1827  {
1828  YYDPRINTF ((stderr, "Reading a token: "));
1829  yychar = yylex ();
1830  }
1831 
1832  if (yychar <= YYEOF)
1833  {
1834  yychar = yytoken = YYEOF;
1835  YYDPRINTF ((stderr, "Now at end of input.\n"));
1836  }
1837  else
1838  {
1839  yytoken = YYTRANSLATE (yychar);
1840  YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
1841  }
1842 
1843  /* If the proper action on seeing token YYTOKEN is to reduce or to
1844  detect an error, take that action. */
1845  yyn += yytoken;
1846  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
1847  goto yydefault;
1848  yyn = yytable[yyn];
1849  if (yyn <= 0)
1850  {
1851  if (yytable_value_is_error (yyn))
1852  goto yyerrlab;
1853  yyn = -yyn;
1854  goto yyreduce;
1855  }
1856 
1857  /* Count tokens shifted since error; after three, turn off error
1858  status. */
1859  if (yyerrstatus)
1860  yyerrstatus--;
1861 
1862  /* Shift the lookahead token. */
1863  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
1864 
1865  /* Discard the shifted token. */
1866  yychar = YYEMPTY;
1867 
1868  yystate = yyn;
1870  *++yyvsp = yylval;
1872  *++yylsp = yylloc;
1873  goto yynewstate;
1874 
1875 
1876 /*-----------------------------------------------------------.
1877 | yydefault -- do the default action for the current state. |
1878 `-----------------------------------------------------------*/
1879 yydefault:
1880  yyn = yydefact[yystate];
1881  if (yyn == 0)
1882  goto yyerrlab;
1883  goto yyreduce;
1884 
1885 
1886 /*-----------------------------.
1887 | yyreduce -- Do a reduction. |
1888 `-----------------------------*/
1889 yyreduce:
1890  /* yyn is the number of a rule to reduce with. */
1891  yylen = yyr2[yyn];
1892 
1893  /* If YYLEN is nonzero, implement the default value of the action:
1894  '$$ = $1'.
1895 
1896  Otherwise, the following line sets YYVAL to garbage.
1897  This behavior is undocumented and Bison
1898  users should not rely upon it. Assigning to YYVAL
1899  unconditionally makes the parser a bit smaller, and it avoids a
1900  GCC warning that YYVAL may be used uninitialized. */
1901  yyval = yyvsp[1-yylen];
1902 
1903  /* Default location. */
1904  YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
1905  YY_REDUCE_PRINT (yyn);
1906  switch (yyn)
1907  {
1908  case 2:
1909 #line 213 "lwin_wkt_parse.y" /* yacc.c:1646 */
1910  { wkt_parser_geometry_new((yyvsp[0].geometryvalue), SRID_UNKNOWN); WKT_ERROR(); }
1911 #line 1889 "lwin_wkt_parse.c" /* yacc.c:1646 */
1912  break;
1913 
1914  case 3:
1915 #line 215 "lwin_wkt_parse.y" /* yacc.c:1646 */
1916  { wkt_parser_geometry_new((yyvsp[0].geometryvalue), (yyvsp[-2].integervalue)); WKT_ERROR(); }
1917 #line 1895 "lwin_wkt_parse.c" /* yacc.c:1646 */
1918  break;
1919 
1920  case 4:
1921 #line 218 "lwin_wkt_parse.y" /* yacc.c:1646 */
1922  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
1923 #line 1901 "lwin_wkt_parse.c" /* yacc.c:1646 */
1924  break;
1925 
1926  case 5:
1927 #line 219 "lwin_wkt_parse.y" /* yacc.c:1646 */
1928  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
1929 #line 1907 "lwin_wkt_parse.c" /* yacc.c:1646 */
1930  break;
1931 
1932  case 6:
1933 #line 220 "lwin_wkt_parse.y" /* yacc.c:1646 */
1934  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
1935 #line 1913 "lwin_wkt_parse.c" /* yacc.c:1646 */
1936  break;
1937 
1938  case 7:
1939 #line 221 "lwin_wkt_parse.y" /* yacc.c:1646 */
1940  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
1941 #line 1919 "lwin_wkt_parse.c" /* yacc.c:1646 */
1942  break;
1943 
1944  case 8:
1945 #line 222 "lwin_wkt_parse.y" /* yacc.c:1646 */
1946  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
1947 #line 1925 "lwin_wkt_parse.c" /* yacc.c:1646 */
1948  break;
1949 
1950  case 9:
1951 #line 223 "lwin_wkt_parse.y" /* yacc.c:1646 */
1952  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
1953 #line 1931 "lwin_wkt_parse.c" /* yacc.c:1646 */
1954  break;
1955 
1956  case 10:
1957 #line 224 "lwin_wkt_parse.y" /* yacc.c:1646 */
1958  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
1959 #line 1937 "lwin_wkt_parse.c" /* yacc.c:1646 */
1960  break;
1961 
1962  case 11:
1963 #line 225 "lwin_wkt_parse.y" /* yacc.c:1646 */
1964  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
1965 #line 1943 "lwin_wkt_parse.c" /* yacc.c:1646 */
1966  break;
1967 
1968  case 12:
1969 #line 226 "lwin_wkt_parse.y" /* yacc.c:1646 */
1970  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
1971 #line 1949 "lwin_wkt_parse.c" /* yacc.c:1646 */
1972  break;
1973 
1974  case 13:
1975 #line 227 "lwin_wkt_parse.y" /* yacc.c:1646 */
1976  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
1977 #line 1955 "lwin_wkt_parse.c" /* yacc.c:1646 */
1978  break;
1979 
1980  case 14:
1981 #line 228 "lwin_wkt_parse.y" /* yacc.c:1646 */
1982  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
1983 #line 1961 "lwin_wkt_parse.c" /* yacc.c:1646 */
1984  break;
1985 
1986  case 15:
1987 #line 229 "lwin_wkt_parse.y" /* yacc.c:1646 */
1988  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
1989 #line 1967 "lwin_wkt_parse.c" /* yacc.c:1646 */
1990  break;
1991 
1992  case 16:
1993 #line 230 "lwin_wkt_parse.y" /* yacc.c:1646 */
1994  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
1995 #line 1973 "lwin_wkt_parse.c" /* yacc.c:1646 */
1996  break;
1997 
1998  case 17:
1999 #line 231 "lwin_wkt_parse.y" /* yacc.c:1646 */
2000  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
2001 #line 1979 "lwin_wkt_parse.c" /* yacc.c:1646 */
2002  break;
2003 
2004  case 18:
2005 #line 232 "lwin_wkt_parse.y" /* yacc.c:1646 */
2006  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
2007 #line 1985 "lwin_wkt_parse.c" /* yacc.c:1646 */
2008  break;
2009 
2010  case 19:
2011 #line 236 "lwin_wkt_parse.y" /* yacc.c:1646 */
2012  { (yyval.geometryvalue) = wkt_parser_collection_finalize(COLLECTIONTYPE, (yyvsp[-1].geometryvalue), NULL); WKT_ERROR(); }
2013 #line 1991 "lwin_wkt_parse.c" /* yacc.c:1646 */
2014  break;
2015 
2016  case 20:
2017 #line 238 "lwin_wkt_parse.y" /* yacc.c:1646 */
2018  { (yyval.geometryvalue) = wkt_parser_collection_finalize(COLLECTIONTYPE, (yyvsp[-1].geometryvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2019 #line 1997 "lwin_wkt_parse.c" /* yacc.c:1646 */
2020  break;
2021 
2022  case 21:
2023 #line 240 "lwin_wkt_parse.y" /* yacc.c:1646 */
2024  { (yyval.geometryvalue) = wkt_parser_collection_finalize(COLLECTIONTYPE, NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2025 #line 2003 "lwin_wkt_parse.c" /* yacc.c:1646 */
2026  break;
2027 
2028  case 22:
2029 #line 242 "lwin_wkt_parse.y" /* yacc.c:1646 */
2031 #line 2009 "lwin_wkt_parse.c" /* yacc.c:1646 */
2032  break;
2033 
2034  case 23:
2035 #line 246 "lwin_wkt_parse.y" /* yacc.c:1646 */
2036  { (yyval.geometryvalue) = wkt_parser_collection_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2037 #line 2015 "lwin_wkt_parse.c" /* yacc.c:1646 */
2038  break;
2039 
2040  case 24:
2041 #line 248 "lwin_wkt_parse.y" /* yacc.c:1646 */
2042  { (yyval.geometryvalue) = wkt_parser_collection_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2043 #line 2021 "lwin_wkt_parse.c" /* yacc.c:1646 */
2044  break;
2045 
2046  case 25:
2047 #line 252 "lwin_wkt_parse.y" /* yacc.c:1646 */
2048  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTISURFACETYPE, (yyvsp[-1].geometryvalue), NULL); WKT_ERROR(); }
2049 #line 2027 "lwin_wkt_parse.c" /* yacc.c:1646 */
2050  break;
2051 
2052  case 26:
2053 #line 254 "lwin_wkt_parse.y" /* yacc.c:1646 */
2054  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTISURFACETYPE, (yyvsp[-1].geometryvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2055 #line 2033 "lwin_wkt_parse.c" /* yacc.c:1646 */
2056  break;
2057 
2058  case 27:
2059 #line 256 "lwin_wkt_parse.y" /* yacc.c:1646 */
2060  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTISURFACETYPE, NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2061 #line 2039 "lwin_wkt_parse.c" /* yacc.c:1646 */
2062  break;
2063 
2064  case 28:
2065 #line 258 "lwin_wkt_parse.y" /* yacc.c:1646 */
2067 #line 2045 "lwin_wkt_parse.c" /* yacc.c:1646 */
2068  break;
2069 
2070  case 29:
2071 #line 262 "lwin_wkt_parse.y" /* yacc.c:1646 */
2072  { (yyval.geometryvalue) = wkt_parser_collection_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2073 #line 2051 "lwin_wkt_parse.c" /* yacc.c:1646 */
2074  break;
2075 
2076  case 30:
2077 #line 264 "lwin_wkt_parse.y" /* yacc.c:1646 */
2078  { (yyval.geometryvalue) = wkt_parser_collection_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2079 #line 2057 "lwin_wkt_parse.c" /* yacc.c:1646 */
2080  break;
2081 
2082  case 31:
2083 #line 266 "lwin_wkt_parse.y" /* yacc.c:1646 */
2084  { (yyval.geometryvalue) = wkt_parser_collection_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2085 #line 2063 "lwin_wkt_parse.c" /* yacc.c:1646 */
2086  break;
2087 
2088  case 32:
2089 #line 268 "lwin_wkt_parse.y" /* yacc.c:1646 */
2090  { (yyval.geometryvalue) = wkt_parser_collection_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2091 #line 2069 "lwin_wkt_parse.c" /* yacc.c:1646 */
2092  break;
2093 
2094  case 33:
2095 #line 270 "lwin_wkt_parse.y" /* yacc.c:1646 */
2096  { (yyval.geometryvalue) = wkt_parser_collection_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2097 #line 2075 "lwin_wkt_parse.c" /* yacc.c:1646 */
2098  break;
2099 
2100  case 34:
2101 #line 272 "lwin_wkt_parse.y" /* yacc.c:1646 */
2102  { (yyval.geometryvalue) = wkt_parser_collection_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2103 #line 2081 "lwin_wkt_parse.c" /* yacc.c:1646 */
2104  break;
2105 
2106  case 35:
2107 #line 276 "lwin_wkt_parse.y" /* yacc.c:1646 */
2108  { (yyval.geometryvalue) = wkt_parser_collection_finalize(TINTYPE, (yyvsp[-1].geometryvalue), NULL); WKT_ERROR(); }
2109 #line 2087 "lwin_wkt_parse.c" /* yacc.c:1646 */
2110  break;
2111 
2112  case 36:
2113 #line 278 "lwin_wkt_parse.y" /* yacc.c:1646 */
2114  { (yyval.geometryvalue) = wkt_parser_collection_finalize(TINTYPE, (yyvsp[-1].geometryvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2115 #line 2093 "lwin_wkt_parse.c" /* yacc.c:1646 */
2116  break;
2117 
2118  case 37:
2119 #line 280 "lwin_wkt_parse.y" /* yacc.c:1646 */
2120  { (yyval.geometryvalue) = wkt_parser_collection_finalize(TINTYPE, NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2121 #line 2099 "lwin_wkt_parse.c" /* yacc.c:1646 */
2122  break;
2123 
2124  case 38:
2125 #line 282 "lwin_wkt_parse.y" /* yacc.c:1646 */
2126  { (yyval.geometryvalue) = wkt_parser_collection_finalize(TINTYPE, NULL, NULL); WKT_ERROR(); }
2127 #line 2105 "lwin_wkt_parse.c" /* yacc.c:1646 */
2128  break;
2129 
2130  case 39:
2131 #line 286 "lwin_wkt_parse.y" /* yacc.c:1646 */
2132  { (yyval.geometryvalue) = wkt_parser_collection_finalize(POLYHEDRALSURFACETYPE, (yyvsp[-1].geometryvalue), NULL); WKT_ERROR(); }
2133 #line 2111 "lwin_wkt_parse.c" /* yacc.c:1646 */
2134  break;
2135 
2136  case 40:
2137 #line 288 "lwin_wkt_parse.y" /* yacc.c:1646 */
2138  { (yyval.geometryvalue) = wkt_parser_collection_finalize(POLYHEDRALSURFACETYPE, (yyvsp[-1].geometryvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2139 #line 2117 "lwin_wkt_parse.c" /* yacc.c:1646 */
2140  break;
2141 
2142  case 41:
2143 #line 290 "lwin_wkt_parse.y" /* yacc.c:1646 */
2144  { (yyval.geometryvalue) = wkt_parser_collection_finalize(POLYHEDRALSURFACETYPE, NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2145 #line 2123 "lwin_wkt_parse.c" /* yacc.c:1646 */
2146  break;
2147 
2148  case 42:
2149 #line 292 "lwin_wkt_parse.y" /* yacc.c:1646 */
2151 #line 2129 "lwin_wkt_parse.c" /* yacc.c:1646 */
2152  break;
2153 
2154  case 43:
2155 #line 296 "lwin_wkt_parse.y" /* yacc.c:1646 */
2156  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTIPOLYGONTYPE, (yyvsp[-1].geometryvalue), NULL); WKT_ERROR(); }
2157 #line 2135 "lwin_wkt_parse.c" /* yacc.c:1646 */
2158  break;
2159 
2160  case 44:
2161 #line 298 "lwin_wkt_parse.y" /* yacc.c:1646 */
2162  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTIPOLYGONTYPE, (yyvsp[-1].geometryvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2163 #line 2141 "lwin_wkt_parse.c" /* yacc.c:1646 */
2164  break;
2165 
2166  case 45:
2167 #line 300 "lwin_wkt_parse.y" /* yacc.c:1646 */
2168  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTIPOLYGONTYPE, NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2169 #line 2147 "lwin_wkt_parse.c" /* yacc.c:1646 */
2170  break;
2171 
2172  case 46:
2173 #line 302 "lwin_wkt_parse.y" /* yacc.c:1646 */
2175 #line 2153 "lwin_wkt_parse.c" /* yacc.c:1646 */
2176  break;
2177 
2178  case 47:
2179 #line 306 "lwin_wkt_parse.y" /* yacc.c:1646 */
2180  { (yyval.geometryvalue) = wkt_parser_collection_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2181 #line 2159 "lwin_wkt_parse.c" /* yacc.c:1646 */
2182  break;
2183 
2184  case 48:
2185 #line 308 "lwin_wkt_parse.y" /* yacc.c:1646 */
2186  { (yyval.geometryvalue) = wkt_parser_collection_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2187 #line 2165 "lwin_wkt_parse.c" /* yacc.c:1646 */
2188  break;
2189 
2190  case 49:
2191 #line 312 "lwin_wkt_parse.y" /* yacc.c:1646 */
2192  { (yyval.geometryvalue) = wkt_parser_collection_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2193 #line 2171 "lwin_wkt_parse.c" /* yacc.c:1646 */
2194  break;
2195 
2196  case 50:
2197 #line 314 "lwin_wkt_parse.y" /* yacc.c:1646 */
2198  { (yyval.geometryvalue) = wkt_parser_collection_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2199 #line 2177 "lwin_wkt_parse.c" /* yacc.c:1646 */
2200  break;
2201 
2202  case 51:
2203 #line 318 "lwin_wkt_parse.y" /* yacc.c:1646 */
2204  { (yyval.geometryvalue) = wkt_parser_polygon_finalize((yyvsp[-1].geometryvalue), NULL); WKT_ERROR(); }
2205 #line 2183 "lwin_wkt_parse.c" /* yacc.c:1646 */
2206  break;
2207 
2208  case 52:
2209 #line 320 "lwin_wkt_parse.y" /* yacc.c:1646 */
2210  { (yyval.geometryvalue) = wkt_parser_polygon_finalize((yyvsp[-1].geometryvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2211 #line 2189 "lwin_wkt_parse.c" /* yacc.c:1646 */
2212  break;
2213 
2214  case 53:
2215 #line 322 "lwin_wkt_parse.y" /* yacc.c:1646 */
2216  { (yyval.geometryvalue) = wkt_parser_polygon_finalize(NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2217 #line 2195 "lwin_wkt_parse.c" /* yacc.c:1646 */
2218  break;
2219 
2220  case 54:
2221 #line 324 "lwin_wkt_parse.y" /* yacc.c:1646 */
2222  { (yyval.geometryvalue) = wkt_parser_polygon_finalize(NULL, NULL); WKT_ERROR(); }
2223 #line 2201 "lwin_wkt_parse.c" /* yacc.c:1646 */
2224  break;
2225 
2226  case 55:
2227 #line 328 "lwin_wkt_parse.y" /* yacc.c:1646 */
2228  { (yyval.geometryvalue) = (yyvsp[-1].geometryvalue); }
2229 #line 2207 "lwin_wkt_parse.c" /* yacc.c:1646 */
2230  break;
2231 
2232  case 56:
2233 #line 330 "lwin_wkt_parse.y" /* yacc.c:1646 */
2234  { (yyval.geometryvalue) = wkt_parser_polygon_finalize(NULL, NULL); WKT_ERROR(); }
2235 #line 2213 "lwin_wkt_parse.c" /* yacc.c:1646 */
2236  break;
2237 
2238  case 57:
2239 #line 333 "lwin_wkt_parse.y" /* yacc.c:1646 */
2240  { (yyval.geometryvalue) = (yyvsp[-1].geometryvalue); }
2241 #line 2219 "lwin_wkt_parse.c" /* yacc.c:1646 */
2242  break;
2243 
2244  case 58:
2245 #line 337 "lwin_wkt_parse.y" /* yacc.c:1646 */
2246  { (yyval.geometryvalue) = wkt_parser_curvepolygon_finalize((yyvsp[-1].geometryvalue), NULL); WKT_ERROR(); }
2247 #line 2225 "lwin_wkt_parse.c" /* yacc.c:1646 */
2248  break;
2249 
2250  case 59:
2251 #line 339 "lwin_wkt_parse.y" /* yacc.c:1646 */
2252  { (yyval.geometryvalue) = wkt_parser_curvepolygon_finalize((yyvsp[-1].geometryvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2253 #line 2231 "lwin_wkt_parse.c" /* yacc.c:1646 */
2254  break;
2255 
2256  case 60:
2257 #line 341 "lwin_wkt_parse.y" /* yacc.c:1646 */
2258  { (yyval.geometryvalue) = wkt_parser_curvepolygon_finalize(NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2259 #line 2237 "lwin_wkt_parse.c" /* yacc.c:1646 */
2260  break;
2261 
2262  case 61:
2263 #line 343 "lwin_wkt_parse.y" /* yacc.c:1646 */
2264  { (yyval.geometryvalue) = wkt_parser_curvepolygon_finalize(NULL, NULL); WKT_ERROR(); }
2265 #line 2243 "lwin_wkt_parse.c" /* yacc.c:1646 */
2266  break;
2267 
2268  case 62:
2269 #line 347 "lwin_wkt_parse.y" /* yacc.c:1646 */
2270  { (yyval.geometryvalue) = wkt_parser_curvepolygon_add_ring((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2271 #line 2249 "lwin_wkt_parse.c" /* yacc.c:1646 */
2272  break;
2273 
2274  case 63:
2275 #line 349 "lwin_wkt_parse.y" /* yacc.c:1646 */
2276  { (yyval.geometryvalue) = wkt_parser_curvepolygon_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2277 #line 2255 "lwin_wkt_parse.c" /* yacc.c:1646 */
2278  break;
2279 
2280  case 64:
2281 #line 352 "lwin_wkt_parse.y" /* yacc.c:1646 */
2282  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
2283 #line 2261 "lwin_wkt_parse.c" /* yacc.c:1646 */
2284  break;
2285 
2286  case 65:
2287 #line 353 "lwin_wkt_parse.y" /* yacc.c:1646 */
2288  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
2289 #line 2267 "lwin_wkt_parse.c" /* yacc.c:1646 */
2290  break;
2291 
2292  case 66:
2293 #line 354 "lwin_wkt_parse.y" /* yacc.c:1646 */
2294  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
2295 #line 2273 "lwin_wkt_parse.c" /* yacc.c:1646 */
2296  break;
2297 
2298  case 67:
2299 #line 355 "lwin_wkt_parse.y" /* yacc.c:1646 */
2300  { (yyval.geometryvalue) = (yyvsp[0].geometryvalue); }
2301 #line 2279 "lwin_wkt_parse.c" /* yacc.c:1646 */
2302  break;
2303 
2304  case 68:
2305 #line 359 "lwin_wkt_parse.y" /* yacc.c:1646 */
2306  { (yyval.geometryvalue) = wkt_parser_polygon_add_ring((yyvsp[-2].geometryvalue),(yyvsp[0].ptarrayvalue),'Z'); WKT_ERROR(); }
2307 #line 2285 "lwin_wkt_parse.c" /* yacc.c:1646 */
2308  break;
2309 
2310  case 69:
2311 #line 361 "lwin_wkt_parse.y" /* yacc.c:1646 */
2312  { (yyval.geometryvalue) = wkt_parser_polygon_new((yyvsp[0].ptarrayvalue),'Z'); WKT_ERROR(); }
2313 #line 2291 "lwin_wkt_parse.c" /* yacc.c:1646 */
2314  break;
2315 
2316  case 70:
2317 #line 365 "lwin_wkt_parse.y" /* yacc.c:1646 */
2318  { (yyval.geometryvalue) = wkt_parser_polygon_add_ring((yyvsp[-2].geometryvalue),(yyvsp[0].ptarrayvalue),'2'); WKT_ERROR(); }
2319 #line 2297 "lwin_wkt_parse.c" /* yacc.c:1646 */
2320  break;
2321 
2322  case 71:
2323 #line 367 "lwin_wkt_parse.y" /* yacc.c:1646 */
2324  { (yyval.geometryvalue) = wkt_parser_polygon_new((yyvsp[0].ptarrayvalue),'2'); WKT_ERROR(); }
2325 #line 2303 "lwin_wkt_parse.c" /* yacc.c:1646 */
2326  break;
2327 
2328  case 72:
2329 #line 370 "lwin_wkt_parse.y" /* yacc.c:1646 */
2330  { (yyval.ptarrayvalue) = (yyvsp[-1].ptarrayvalue); }
2331 #line 2309 "lwin_wkt_parse.c" /* yacc.c:1646 */
2332  break;
2333 
2334  case 73:
2335 #line 373 "lwin_wkt_parse.y" /* yacc.c:1646 */
2336  { (yyval.ptarrayvalue) = (yyvsp[-1].ptarrayvalue); }
2337 #line 2315 "lwin_wkt_parse.c" /* yacc.c:1646 */
2338  break;
2339 
2340  case 74:
2341 #line 377 "lwin_wkt_parse.y" /* yacc.c:1646 */
2342  { (yyval.geometryvalue) = wkt_parser_collection_finalize(COMPOUNDTYPE, (yyvsp[-1].geometryvalue), NULL); WKT_ERROR(); }
2343 #line 2321 "lwin_wkt_parse.c" /* yacc.c:1646 */
2344  break;
2345 
2346  case 75:
2347 #line 379 "lwin_wkt_parse.y" /* yacc.c:1646 */
2348  { (yyval.geometryvalue) = wkt_parser_collection_finalize(COMPOUNDTYPE, (yyvsp[-1].geometryvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2349 #line 2327 "lwin_wkt_parse.c" /* yacc.c:1646 */
2350  break;
2351 
2352  case 76:
2353 #line 381 "lwin_wkt_parse.y" /* yacc.c:1646 */
2354  { (yyval.geometryvalue) = wkt_parser_collection_finalize(COMPOUNDTYPE, NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2355 #line 2333 "lwin_wkt_parse.c" /* yacc.c:1646 */
2356  break;
2357 
2358  case 77:
2359 #line 383 "lwin_wkt_parse.y" /* yacc.c:1646 */
2361 #line 2339 "lwin_wkt_parse.c" /* yacc.c:1646 */
2362  break;
2363 
2364  case 78:
2365 #line 387 "lwin_wkt_parse.y" /* yacc.c:1646 */
2366  { (yyval.geometryvalue) = wkt_parser_compound_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2367 #line 2345 "lwin_wkt_parse.c" /* yacc.c:1646 */
2368  break;
2369 
2370  case 79:
2371 #line 389 "lwin_wkt_parse.y" /* yacc.c:1646 */
2372  { (yyval.geometryvalue) = wkt_parser_compound_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2373 #line 2351 "lwin_wkt_parse.c" /* yacc.c:1646 */
2374  break;
2375 
2376  case 80:
2377 #line 391 "lwin_wkt_parse.y" /* yacc.c:1646 */
2378  { (yyval.geometryvalue) = wkt_parser_compound_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2379 #line 2357 "lwin_wkt_parse.c" /* yacc.c:1646 */
2380  break;
2381 
2382  case 81:
2383 #line 393 "lwin_wkt_parse.y" /* yacc.c:1646 */
2384  { (yyval.geometryvalue) = wkt_parser_compound_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2385 #line 2363 "lwin_wkt_parse.c" /* yacc.c:1646 */
2386  break;
2387 
2388  case 82:
2389 #line 395 "lwin_wkt_parse.y" /* yacc.c:1646 */
2390  { (yyval.geometryvalue) = wkt_parser_compound_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2391 #line 2369 "lwin_wkt_parse.c" /* yacc.c:1646 */
2392  break;
2393 
2394  case 83:
2395 #line 397 "lwin_wkt_parse.y" /* yacc.c:1646 */
2396  { (yyval.geometryvalue) = wkt_parser_compound_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2397 #line 2375 "lwin_wkt_parse.c" /* yacc.c:1646 */
2398  break;
2399 
2400  case 84:
2401 #line 401 "lwin_wkt_parse.y" /* yacc.c:1646 */
2402  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTICURVETYPE, (yyvsp[-1].geometryvalue), NULL); WKT_ERROR(); }
2403 #line 2381 "lwin_wkt_parse.c" /* yacc.c:1646 */
2404  break;
2405 
2406  case 85:
2407 #line 403 "lwin_wkt_parse.y" /* yacc.c:1646 */
2408  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTICURVETYPE, (yyvsp[-1].geometryvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2409 #line 2387 "lwin_wkt_parse.c" /* yacc.c:1646 */
2410  break;
2411 
2412  case 86:
2413 #line 405 "lwin_wkt_parse.y" /* yacc.c:1646 */
2414  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTICURVETYPE, NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2415 #line 2393 "lwin_wkt_parse.c" /* yacc.c:1646 */
2416  break;
2417 
2418  case 87:
2419 #line 407 "lwin_wkt_parse.y" /* yacc.c:1646 */
2421 #line 2399 "lwin_wkt_parse.c" /* yacc.c:1646 */
2422  break;
2423 
2424  case 88:
2425 #line 411 "lwin_wkt_parse.y" /* yacc.c:1646 */
2426  { (yyval.geometryvalue) = wkt_parser_collection_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2427 #line 2405 "lwin_wkt_parse.c" /* yacc.c:1646 */
2428  break;
2429 
2430  case 89:
2431 #line 413 "lwin_wkt_parse.y" /* yacc.c:1646 */
2432  { (yyval.geometryvalue) = wkt_parser_collection_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2433 #line 2411 "lwin_wkt_parse.c" /* yacc.c:1646 */
2434  break;
2435 
2436  case 90:
2437 #line 415 "lwin_wkt_parse.y" /* yacc.c:1646 */
2438  { (yyval.geometryvalue) = wkt_parser_collection_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2439 #line 2417 "lwin_wkt_parse.c" /* yacc.c:1646 */
2440  break;
2441 
2442  case 91:
2443 #line 417 "lwin_wkt_parse.y" /* yacc.c:1646 */
2444  { (yyval.geometryvalue) = wkt_parser_collection_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2445 #line 2423 "lwin_wkt_parse.c" /* yacc.c:1646 */
2446  break;
2447 
2448  case 92:
2449 #line 419 "lwin_wkt_parse.y" /* yacc.c:1646 */
2450  { (yyval.geometryvalue) = wkt_parser_collection_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2451 #line 2429 "lwin_wkt_parse.c" /* yacc.c:1646 */
2452  break;
2453 
2454  case 93:
2455 #line 421 "lwin_wkt_parse.y" /* yacc.c:1646 */
2456  { (yyval.geometryvalue) = wkt_parser_collection_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2457 #line 2435 "lwin_wkt_parse.c" /* yacc.c:1646 */
2458  break;
2459 
2460  case 94:
2461 #line 423 "lwin_wkt_parse.y" /* yacc.c:1646 */
2462  { (yyval.geometryvalue) = wkt_parser_collection_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2463 #line 2441 "lwin_wkt_parse.c" /* yacc.c:1646 */
2464  break;
2465 
2466  case 95:
2467 #line 425 "lwin_wkt_parse.y" /* yacc.c:1646 */
2468  { (yyval.geometryvalue) = wkt_parser_collection_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2469 #line 2447 "lwin_wkt_parse.c" /* yacc.c:1646 */
2470  break;
2471 
2472  case 96:
2473 #line 429 "lwin_wkt_parse.y" /* yacc.c:1646 */
2474  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTILINETYPE, (yyvsp[-1].geometryvalue), NULL); WKT_ERROR(); }
2475 #line 2453 "lwin_wkt_parse.c" /* yacc.c:1646 */
2476  break;
2477 
2478  case 97:
2479 #line 431 "lwin_wkt_parse.y" /* yacc.c:1646 */
2480  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTILINETYPE, (yyvsp[-1].geometryvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2481 #line 2459 "lwin_wkt_parse.c" /* yacc.c:1646 */
2482  break;
2483 
2484  case 98:
2485 #line 433 "lwin_wkt_parse.y" /* yacc.c:1646 */
2486  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTILINETYPE, NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2487 #line 2465 "lwin_wkt_parse.c" /* yacc.c:1646 */
2488  break;
2489 
2490  case 99:
2491 #line 435 "lwin_wkt_parse.y" /* yacc.c:1646 */
2493 #line 2471 "lwin_wkt_parse.c" /* yacc.c:1646 */
2494  break;
2495 
2496  case 100:
2497 #line 439 "lwin_wkt_parse.y" /* yacc.c:1646 */
2498  { (yyval.geometryvalue) = wkt_parser_collection_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2499 #line 2477 "lwin_wkt_parse.c" /* yacc.c:1646 */
2500  break;
2501 
2502  case 101:
2503 #line 441 "lwin_wkt_parse.y" /* yacc.c:1646 */
2504  { (yyval.geometryvalue) = wkt_parser_collection_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2505 #line 2483 "lwin_wkt_parse.c" /* yacc.c:1646 */
2506  break;
2507 
2508  case 102:
2509 #line 445 "lwin_wkt_parse.y" /* yacc.c:1646 */
2510  { (yyval.geometryvalue) = wkt_parser_circularstring_new((yyvsp[-1].ptarrayvalue), NULL); WKT_ERROR(); }
2511 #line 2489 "lwin_wkt_parse.c" /* yacc.c:1646 */
2512  break;
2513 
2514  case 103:
2515 #line 447 "lwin_wkt_parse.y" /* yacc.c:1646 */
2516  { (yyval.geometryvalue) = wkt_parser_circularstring_new((yyvsp[-1].ptarrayvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2517 #line 2495 "lwin_wkt_parse.c" /* yacc.c:1646 */
2518  break;
2519 
2520  case 104:
2521 #line 449 "lwin_wkt_parse.y" /* yacc.c:1646 */
2522  { (yyval.geometryvalue) = wkt_parser_circularstring_new(NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2523 #line 2501 "lwin_wkt_parse.c" /* yacc.c:1646 */
2524  break;
2525 
2526  case 105:
2527 #line 451 "lwin_wkt_parse.y" /* yacc.c:1646 */
2528  { (yyval.geometryvalue) = wkt_parser_circularstring_new(NULL, NULL); WKT_ERROR(); }
2529 #line 2507 "lwin_wkt_parse.c" /* yacc.c:1646 */
2530  break;
2531 
2532  case 106:
2533 #line 455 "lwin_wkt_parse.y" /* yacc.c:1646 */
2534  { (yyval.geometryvalue) = wkt_parser_linestring_new((yyvsp[-1].ptarrayvalue), NULL); WKT_ERROR(); }
2535 #line 2513 "lwin_wkt_parse.c" /* yacc.c:1646 */
2536  break;
2537 
2538  case 107:
2539 #line 457 "lwin_wkt_parse.y" /* yacc.c:1646 */
2540  { (yyval.geometryvalue) = wkt_parser_linestring_new((yyvsp[-1].ptarrayvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2541 #line 2519 "lwin_wkt_parse.c" /* yacc.c:1646 */
2542  break;
2543 
2544  case 108:
2545 #line 459 "lwin_wkt_parse.y" /* yacc.c:1646 */
2546  { (yyval.geometryvalue) = wkt_parser_linestring_new(NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2547 #line 2525 "lwin_wkt_parse.c" /* yacc.c:1646 */
2548  break;
2549 
2550  case 109:
2551 #line 461 "lwin_wkt_parse.y" /* yacc.c:1646 */
2552  { (yyval.geometryvalue) = wkt_parser_linestring_new(NULL, NULL); WKT_ERROR(); }
2553 #line 2531 "lwin_wkt_parse.c" /* yacc.c:1646 */
2554  break;
2555 
2556  case 110:
2557 #line 465 "lwin_wkt_parse.y" /* yacc.c:1646 */
2558  { (yyval.geometryvalue) = wkt_parser_linestring_new((yyvsp[-1].ptarrayvalue), NULL); WKT_ERROR(); }
2559 #line 2537 "lwin_wkt_parse.c" /* yacc.c:1646 */
2560  break;
2561 
2562  case 111:
2563 #line 467 "lwin_wkt_parse.y" /* yacc.c:1646 */
2564  { (yyval.geometryvalue) = wkt_parser_linestring_new(NULL, NULL); WKT_ERROR(); }
2565 #line 2543 "lwin_wkt_parse.c" /* yacc.c:1646 */
2566  break;
2567 
2568  case 112:
2569 #line 471 "lwin_wkt_parse.y" /* yacc.c:1646 */
2570  { (yyval.geometryvalue) = wkt_parser_collection_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2571 #line 2549 "lwin_wkt_parse.c" /* yacc.c:1646 */
2572  break;
2573 
2574  case 113:
2575 #line 473 "lwin_wkt_parse.y" /* yacc.c:1646 */
2576  { (yyval.geometryvalue) = wkt_parser_collection_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2577 #line 2555 "lwin_wkt_parse.c" /* yacc.c:1646 */
2578  break;
2579 
2580  case 114:
2581 #line 477 "lwin_wkt_parse.y" /* yacc.c:1646 */
2582  { (yyval.geometryvalue) = wkt_parser_triangle_new((yyvsp[-2].ptarrayvalue), NULL); WKT_ERROR(); }
2583 #line 2561 "lwin_wkt_parse.c" /* yacc.c:1646 */
2584  break;
2585 
2586  case 115:
2587 #line 479 "lwin_wkt_parse.y" /* yacc.c:1646 */
2588  { (yyval.geometryvalue) = wkt_parser_triangle_new((yyvsp[-2].ptarrayvalue), (yyvsp[-5].stringvalue)); WKT_ERROR(); }
2589 #line 2567 "lwin_wkt_parse.c" /* yacc.c:1646 */
2590  break;
2591 
2592  case 116:
2593 #line 481 "lwin_wkt_parse.y" /* yacc.c:1646 */
2594  { (yyval.geometryvalue) = wkt_parser_triangle_new(NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2595 #line 2573 "lwin_wkt_parse.c" /* yacc.c:1646 */
2596  break;
2597 
2598  case 117:
2599 #line 483 "lwin_wkt_parse.y" /* yacc.c:1646 */
2600  { (yyval.geometryvalue) = wkt_parser_triangle_new(NULL, NULL); WKT_ERROR(); }
2601 #line 2579 "lwin_wkt_parse.c" /* yacc.c:1646 */
2602  break;
2603 
2604  case 118:
2605 #line 487 "lwin_wkt_parse.y" /* yacc.c:1646 */
2606  { (yyval.geometryvalue) = wkt_parser_triangle_new((yyvsp[-2].ptarrayvalue), NULL); WKT_ERROR(); }
2607 #line 2585 "lwin_wkt_parse.c" /* yacc.c:1646 */
2608  break;
2609 
2610  case 119:
2611 #line 491 "lwin_wkt_parse.y" /* yacc.c:1646 */
2612  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTIPOINTTYPE, (yyvsp[-1].geometryvalue), NULL); WKT_ERROR(); }
2613 #line 2591 "lwin_wkt_parse.c" /* yacc.c:1646 */
2614  break;
2615 
2616  case 120:
2617 #line 493 "lwin_wkt_parse.y" /* yacc.c:1646 */
2618  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTIPOINTTYPE, (yyvsp[-1].geometryvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2619 #line 2597 "lwin_wkt_parse.c" /* yacc.c:1646 */
2620  break;
2621 
2622  case 121:
2623 #line 495 "lwin_wkt_parse.y" /* yacc.c:1646 */
2624  { (yyval.geometryvalue) = wkt_parser_collection_finalize(MULTIPOINTTYPE, NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2625 #line 2603 "lwin_wkt_parse.c" /* yacc.c:1646 */
2626  break;
2627 
2628  case 122:
2629 #line 497 "lwin_wkt_parse.y" /* yacc.c:1646 */
2631 #line 2609 "lwin_wkt_parse.c" /* yacc.c:1646 */
2632  break;
2633 
2634  case 123:
2635 #line 501 "lwin_wkt_parse.y" /* yacc.c:1646 */
2636  { (yyval.geometryvalue) = wkt_parser_collection_add_geom((yyvsp[-2].geometryvalue),(yyvsp[0].geometryvalue)); WKT_ERROR(); }
2637 #line 2615 "lwin_wkt_parse.c" /* yacc.c:1646 */
2638  break;
2639 
2640  case 124:
2641 #line 503 "lwin_wkt_parse.y" /* yacc.c:1646 */
2642  { (yyval.geometryvalue) = wkt_parser_collection_new((yyvsp[0].geometryvalue)); WKT_ERROR(); }
2643 #line 2621 "lwin_wkt_parse.c" /* yacc.c:1646 */
2644  break;
2645 
2646  case 125:
2647 #line 507 "lwin_wkt_parse.y" /* yacc.c:1646 */
2648  { (yyval.geometryvalue) = wkt_parser_point_new(wkt_parser_ptarray_new((yyvsp[0].coordinatevalue)),NULL); WKT_ERROR(); }
2649 #line 2627 "lwin_wkt_parse.c" /* yacc.c:1646 */
2650  break;
2651 
2652  case 126:
2653 #line 509 "lwin_wkt_parse.y" /* yacc.c:1646 */
2654  { (yyval.geometryvalue) = wkt_parser_point_new(wkt_parser_ptarray_new((yyvsp[-1].coordinatevalue)),NULL); WKT_ERROR(); }
2655 #line 2633 "lwin_wkt_parse.c" /* yacc.c:1646 */
2656  break;
2657 
2658  case 127:
2659 #line 511 "lwin_wkt_parse.y" /* yacc.c:1646 */
2660  { (yyval.geometryvalue) = wkt_parser_point_new(NULL, NULL); WKT_ERROR(); }
2661 #line 2639 "lwin_wkt_parse.c" /* yacc.c:1646 */
2662  break;
2663 
2664  case 128:
2665 #line 515 "lwin_wkt_parse.y" /* yacc.c:1646 */
2666  { (yyval.geometryvalue) = wkt_parser_point_new((yyvsp[-1].ptarrayvalue), NULL); WKT_ERROR(); }
2667 #line 2645 "lwin_wkt_parse.c" /* yacc.c:1646 */
2668  break;
2669 
2670  case 129:
2671 #line 517 "lwin_wkt_parse.y" /* yacc.c:1646 */
2672  { (yyval.geometryvalue) = wkt_parser_point_new((yyvsp[-1].ptarrayvalue), (yyvsp[-3].stringvalue)); WKT_ERROR(); }
2673 #line 2651 "lwin_wkt_parse.c" /* yacc.c:1646 */
2674  break;
2675 
2676  case 130:
2677 #line 519 "lwin_wkt_parse.y" /* yacc.c:1646 */
2678  { (yyval.geometryvalue) = wkt_parser_point_new(NULL, (yyvsp[-1].stringvalue)); WKT_ERROR(); }
2679 #line 2657 "lwin_wkt_parse.c" /* yacc.c:1646 */
2680  break;
2681 
2682  case 131:
2683 #line 521 "lwin_wkt_parse.y" /* yacc.c:1646 */
2684  { (yyval.geometryvalue) = wkt_parser_point_new(NULL,NULL); WKT_ERROR(); }
2685 #line 2663 "lwin_wkt_parse.c" /* yacc.c:1646 */
2686  break;
2687 
2688  case 132:
2689 #line 525 "lwin_wkt_parse.y" /* yacc.c:1646 */
2690  { (yyval.ptarrayvalue) = wkt_parser_ptarray_add_coord((yyvsp[-2].ptarrayvalue), (yyvsp[0].coordinatevalue)); WKT_ERROR(); }
2691 #line 2669 "lwin_wkt_parse.c" /* yacc.c:1646 */
2692  break;
2693 
2694  case 133:
2695 #line 527 "lwin_wkt_parse.y" /* yacc.c:1646 */
2696  { (yyval.ptarrayvalue) = wkt_parser_ptarray_new((yyvsp[0].coordinatevalue)); WKT_ERROR(); }
2697 #line 2675 "lwin_wkt_parse.c" /* yacc.c:1646 */
2698  break;
2699 
2700  case 134:
2701 #line 531 "lwin_wkt_parse.y" /* yacc.c:1646 */
2702  { (yyval.coordinatevalue) = wkt_parser_coord_2((yyvsp[-1].doublevalue), (yyvsp[0].doublevalue)); WKT_ERROR(); }
2703 #line 2681 "lwin_wkt_parse.c" /* yacc.c:1646 */
2704  break;
2705 
2706  case 135:
2707 #line 533 "lwin_wkt_parse.y" /* yacc.c:1646 */
2708  { (yyval.coordinatevalue) = wkt_parser_coord_3((yyvsp[-2].doublevalue), (yyvsp[-1].doublevalue), (yyvsp[0].doublevalue)); WKT_ERROR(); }
2709 #line 2687 "lwin_wkt_parse.c" /* yacc.c:1646 */
2710  break;
2711 
2712  case 136:
2713 #line 535 "lwin_wkt_parse.y" /* yacc.c:1646 */
2714  { (yyval.coordinatevalue) = wkt_parser_coord_4((yyvsp[-3].doublevalue), (yyvsp[-2].doublevalue), (yyvsp[-1].doublevalue), (yyvsp[0].doublevalue)); WKT_ERROR(); }
2715 #line 2693 "lwin_wkt_parse.c" /* yacc.c:1646 */
2716  break;
2717 
2718 
2719 #line 2697 "lwin_wkt_parse.c" /* yacc.c:1646 */
2720  default: break;
2721  }
2722  /* User semantic actions sometimes alter yychar, and that requires
2723  that yytoken be updated with the new translation. We take the
2724  approach of translating immediately before every use of yytoken.
2725  One alternative is translating here after every semantic action,
2726  but that translation would be missed if the semantic action invokes
2727  YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
2728  if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an
2729  incorrect destructor might then be invoked immediately. In the
2730  case of YYERROR or YYBACKUP, subsequent parser actions might lead
2731  to an incorrect destructor call or verbose syntax error message
2732  before the lookahead is translated. */
2733  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
2734 
2735  YYPOPSTACK (yylen);
2736  yylen = 0;
2737  YY_STACK_PRINT (yyss, yyssp);
2738 
2739  *++yyvsp = yyval;
2740  *++yylsp = yyloc;
2741 
2742  /* Now 'shift' the result of the reduction. Determine what state
2743  that goes to, based on the state we popped back to and the rule
2744  number reduced by. */
2745 
2746  yyn = yyr1[yyn];
2747 
2748  yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
2749  if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
2750  yystate = yytable[yystate];
2751  else
2752  yystate = yydefgoto[yyn - YYNTOKENS];
2753 
2754  goto yynewstate;
2755 
2756 
2757 /*--------------------------------------.
2758 | yyerrlab -- here on detecting error. |
2759 `--------------------------------------*/
2760 yyerrlab:
2761  /* Make sure we have latest lookahead translation. See comments at
2762  user semantic actions for why this is necessary. */
2763  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
2764 
2765  /* If not already recovering from an error, report this error. */
2766  if (!yyerrstatus)
2767  {
2768  ++yynerrs;
2769 #if ! YYERROR_VERBOSE
2770  yyerror (YY_("syntax error"));
2771 #else
2772 # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
2773  yyssp, yytoken)
2774  {
2775  char const *yymsgp = YY_("syntax error");
2776  int yysyntax_error_status;
2777  yysyntax_error_status = YYSYNTAX_ERROR;
2778  if (yysyntax_error_status == 0)
2779  yymsgp = yymsg;
2780  else if (yysyntax_error_status == 1)
2781  {
2782  if (yymsg != yymsgbuf)
2783  YYSTACK_FREE (yymsg);
2784  yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc);
2785  if (!yymsg)
2786  {
2787  yymsg = yymsgbuf;
2788  yymsg_alloc = sizeof yymsgbuf;
2789  yysyntax_error_status = 2;
2790  }
2791  else
2792  {
2793  yysyntax_error_status = YYSYNTAX_ERROR;
2794  yymsgp = yymsg;
2795  }
2796  }
2797  yyerror (yymsgp);
2798  if (yysyntax_error_status == 2)
2799  goto yyexhaustedlab;
2800  }
2801 # undef YYSYNTAX_ERROR
2802 #endif
2803  }
2804 
2805  yyerror_range[1] = yylloc;
2806 
2807  if (yyerrstatus == 3)
2808  {
2809  /* If just tried and failed to reuse lookahead token after an
2810  error, discard it. */
2811 
2812  if (yychar <= YYEOF)
2813  {
2814  /* Return failure if at end of input. */
2815  if (yychar == YYEOF)
2816  YYABORT;
2817  }
2818  else
2819  {
2820  yydestruct ("Error: discarding",
2821  yytoken, &yylval, &yylloc);
2822  yychar = YYEMPTY;
2823  }
2824  }
2825 
2826  /* Else will try to reuse lookahead token after shifting the error
2827  token. */
2828  goto yyerrlab1;
2829 
2830 
2831 /*---------------------------------------------------.
2832 | yyerrorlab -- error raised explicitly by YYERROR. |
2833 `---------------------------------------------------*/
2834 yyerrorlab:
2835 
2836  /* Pacify compilers like GCC when the user code never invokes
2837  YYERROR and the label yyerrorlab therefore never appears in user
2838  code. */
2839  if (/*CONSTCOND*/ 0)
2840  goto yyerrorlab;
2841 
2842  yyerror_range[1] = yylsp[1-yylen];
2843  /* Do not reclaim the symbols of the rule whose action triggered
2844  this YYERROR. */
2845  YYPOPSTACK (yylen);
2846  yylen = 0;
2847  YY_STACK_PRINT (yyss, yyssp);
2848  yystate = *yyssp;
2849  goto yyerrlab1;
2850 
2851 
2852 /*-------------------------------------------------------------.
2853 | yyerrlab1 -- common code for both syntax error and YYERROR. |
2854 `-------------------------------------------------------------*/
2855 yyerrlab1:
2856  yyerrstatus = 3; /* Each real token shifted decrements this. */
2857 
2858  for (;;)
2859  {
2860  yyn = yypact[yystate];
2861  if (!yypact_value_is_default (yyn))
2862  {
2863  yyn += YYTERROR;
2864  if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
2865  {
2866  yyn = yytable[yyn];
2867  if (0 < yyn)
2868  break;
2869  }
2870  }
2871 
2872  /* Pop the current state because it cannot handle the error token. */
2873  if (yyssp == yyss)
2874  YYABORT;
2875 
2876  yyerror_range[1] = *yylsp;
2877  yydestruct ("Error: popping",
2878  yystos[yystate], yyvsp, yylsp);
2879  YYPOPSTACK (1);
2880  yystate = *yyssp;
2881  YY_STACK_PRINT (yyss, yyssp);
2882  }
2883 
2885  *++yyvsp = yylval;
2887 
2888  yyerror_range[2] = yylloc;
2889  /* Using YYLLOC is tempting, but would change the location of
2890  the lookahead. YYLOC is available though. */
2891  YYLLOC_DEFAULT (yyloc, yyerror_range, 2);
2892  *++yylsp = yyloc;
2893 
2894  /* Shift the error token. */
2895  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
2896 
2897  yystate = yyn;
2898  goto yynewstate;
2899 
2900 
2901 /*-------------------------------------.
2902 | yyacceptlab -- YYACCEPT comes here. |
2903 `-------------------------------------*/
2904 yyacceptlab:
2905  yyresult = 0;
2906  goto yyreturn;
2907 
2908 /*-----------------------------------.
2909 | yyabortlab -- YYABORT comes here. |
2910 `-----------------------------------*/
2911 yyabortlab:
2912  yyresult = 1;
2913  goto yyreturn;
2914 
2915 #if !defined yyoverflow || YYERROR_VERBOSE
2916 /*-------------------------------------------------.
2917 | yyexhaustedlab -- memory exhaustion comes here. |
2918 `-------------------------------------------------*/
2919 yyexhaustedlab:
2920  yyerror (YY_("memory exhausted"));
2921  yyresult = 2;
2922  /* Fall through. */
2923 #endif
2924 
2925 yyreturn:
2926  if (yychar != YYEMPTY)
2927  {
2928  /* Make sure we have latest lookahead translation. See comments at
2929  user semantic actions for why this is necessary. */
2930  yytoken = YYTRANSLATE (yychar);
2931  yydestruct ("Cleanup: discarding lookahead",
2932  yytoken, &yylval, &yylloc);
2933  }
2934  /* Do not reclaim the symbols of the rule whose action triggered
2935  this YYABORT or YYACCEPT. */
2936  YYPOPSTACK (yylen);
2937  YY_STACK_PRINT (yyss, yyssp);
2938  while (yyssp != yyss)
2939  {
2940  yydestruct ("Cleanup: popping",
2941  yystos[*yyssp], yyvsp, yylsp);
2942  YYPOPSTACK (1);
2943  }
2944 #ifndef yyoverflow
2945  if (yyss != yyssa)
2946  YYSTACK_FREE (yyss);
2947 #endif
2948 #if YYERROR_VERBOSE
2949  if (yymsg != yymsgbuf)
2950  YYSTACK_FREE (yymsg);
2951 #endif
2952  return yyresult;
2953 }
LWGEOM * wkt_parser_polygon_finalize(LWGEOM *poly, char *dimensionality)
Definition: lwin_wkt.c:535
#define YYABORT
LWGEOM * wkt_parser_triangle_new(POINTARRAY *pa, char *dimensionality)
Definition: lwin_wkt.c:424
#define yylex
short int yytype_int16
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
POINT coordinatevalue
LWGEOM * wkt_parser_point_new(POINTARRAY *pa, char *dimensionality)
Create a new point.
Definition: lwin_wkt.c:320
#define MULTICURVETYPE
Definition: liblwgeom.h:94
LWGEOM * wkt_parser_collection_add_geom(LWGEOM *col, LWGEOM *geom)
Definition: lwin_wkt.c:791
#define yypact_value_is_default(Yystate)
static const yytype_uint8 yydefact[]
LWGEOM * wkt_parser_polygon_add_ring(LWGEOM *poly, POINTARRAY *pa, char dimcheck)
Definition: lwin_wkt.c:485
POINTARRAY * ptarrayvalue
yytype_int16 yyss_alloc
LWGEOM * wkt_parser_curvepolygon_new(LWGEOM *ring)
Definition: lwin_wkt.c:567
#define YYINITDEPTH
LWGEOM * wkt_parser_circularstring_new(POINTARRAY *pa, char *dimensionality)
Create a new circularstring.
Definition: lwin_wkt.c:388
#define YYFINAL
#define COMPOUNDTYPE
Definition: liblwgeom.h:92
#define MULTIPOINTTYPE
Definition: liblwgeom.h:87
YYLTYPE yyls_alloc
LWGEOM * wkt_parser_collection_new(LWGEOM *geom)
Definition: lwin_wkt.c:698
#define YYTERROR
#define POLYHEDRALSURFACETYPE
Definition: liblwgeom.h:96
#define YYEOF
#define YYEMPTY
#define YYTRANSLATE(YYX)
static const yytype_uint8 yycheck[]
LWGEOM * wkt_parser_linestring_new(POINTARRAY *pa, char *dimensionality)
Create a new linestring.
Definition: lwin_wkt.c:354
#define YYSTACK_ALLOC
#define yynerrs
#define yyerror
static const yytype_uint8 yyr1[]
LWGEOM * geometryvalue
#define yytable_value_is_error(Yytable_value)
LWGEOM * wkt_parser_curvepolygon_finalize(LWGEOM *poly, char *dimensionality)
Definition: lwin_wkt.c:666
LWGEOM * wkt_parser_collection_finalize(int lwtype, LWGEOM *geom, char *dimensionality)
Definition: lwin_wkt.c:805
POINTARRAY * wkt_parser_ptarray_new(POINT p)
Start a point array from the first coordinate.
Definition: lwin_wkt.c:303
POINTARRAY * wkt_parser_ptarray_add_coord(POINTARRAY *pa, POINT p)
Definition: lwin_wkt.c:265
#define YYNTOKENS
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
#define SRID_UNKNOWN
Unknown SRID value.
Definition: liblwgeom.h:187
#define TINTYPE
Definition: liblwgeom.h:98
static const yytype_uint8 yyr2[]
static const yytype_uint8 yystos[]
#define yylval
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
static const yytype_int16 yypgoto[]
#define YYSTACK_BYTES(N)
#define yylloc
#define yychar
POINT wkt_parser_coord_2(double c1, double c2)
Build a 2d coordinate.
Definition: lwin_wkt.c:221
#define MULTIPOLYGONTYPE
Definition: liblwgeom.h:89
#define YYACCEPT
LWGEOM * wkt_parser_compound_add_geom(LWGEOM *col, LWGEOM *geom)
Definition: lwin_wkt.c:759
#define YYLLOC_DEFAULT(Current, Rhs, N)
LWGEOM * wkt_parser_polygon_new(POINTARRAY *pa, char dimcheck)
Definition: lwin_wkt.c:460
#define YY_(Msgid)
#define MULTISURFACETYPE
Definition: liblwgeom.h:95
POINT wkt_parser_coord_3(double c1, double c2, double c3)
Note, if this is an XYM coordinate we'll have to fix it later when we build the object itself and hav...
Definition: lwin_wkt.c:237
static void yydestruct(const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp)
#define YYSYNTAX_ERROR
#define YYSTACK_FREE
YYSTYPE yyvs_alloc
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
#define YY_STACK_PRINT(Bottom, Top)
#define WKT_ERROR()
void wkt_parser_geometry_new(LWGEOM *geom, int srid)
Definition: lwin_wkt.c:859
LWGEOM * wkt_parser_curvepolygon_add_ring(LWGEOM *poly, LWGEOM *ring)
Definition: lwin_wkt.c:585
#define YY_REDUCE_PRINT(Rule)
#define YYSIZE_T
static const yytype_int16 yypact[]
#define MULTILINETYPE
Definition: liblwgeom.h:88
#define YYLAST
#define YYMAXDEPTH
static const yytype_int16 yydefgoto[]
#define COLLECTIONTYPE
Definition: liblwgeom.h:90
static const yytype_uint16 yytable[]
POINT wkt_parser_coord_4(double c1, double c2, double c3, double c4)
Definition: lwin_wkt.c:252
#define YYDPRINTF(Args)
LWGEOM * wkt_parser_compound_new(LWGEOM *geom)
Definition: lwin_wkt.c:724
#define YYPOPSTACK(N)

Here is the call graph for this function: