Boost logo

Boost Users :

From: Steve Juranich (juranich_at_[hidden])
Date: 2004-03-16 09:11:52


On Tue, 16 Mar 2004, Vladimir Prus wrote:

> Strange. lvalp should have the type YYSTYPE, which should be declared in
> yystype.h. Would you mind running
>
> g++ -save-temps -ftemplate-depth-50 -DGRAPHVIZ_DIRECTED=0 -I../../.. -g
> -c graphviz_graph_lex.cpp
>
> and looking at preprocessing results (in graphviz_graph_lex.ii) and
> determining the real type of 'yylex' function parameter and 'lvalp'
> variable?

Okay, this is something.

On line 29176 of the .ii file, there's the following function definition
that begins:

int bgl_undir_lex(yystype* lvalp)
        {

So, looking up the file I see 2 other occurrences of 'yystype'. The both
occur in the following block:

<snip>
# 1 "yystype.h" 1

union YYSTYPE {
  int i;
  void* ptr;
};
# 33 "graphviz_lex.ll" 2
# 41 "graphviz_lex.ll"
# 1 "graphviz_graph_parser.hpp" 1
# 34 "graphviz_graph_parser.hpp"
   enum yytokentype {
     GRAPH_T = 258,
     NODE_T = 259,
     EDGE_T = 260,
     DIGRAPH_T = 261,
     EDGEOP_T = 262,
     SUBGRAPH_T = 263,
     ID_T = 264
   };
# 56 "graphviz_graph_parser.hpp"
typedef int yystype;
</snip>

So, it looks like yystype is an 'int'. Unfortunately, I'm kind of beyond
the reach of my knowledge and experience, so I'll have to depend on others
to tell me what to do next.

Thanks a lot.

-- 
Stephen W. Juranich
Science Applications Intl. Corp. (SAIC)
(520) 570-7706

Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net