Closed sanssecours closed 5 years ago
@ColinH I could "fix" the issue by changing m_begin = in.iterator();
to m_begin = TAO_PEGTL_NAMESPACE::internal::iterator( in.iterator() );
(and likewise for m_end
) in parse_tree.hpp
, but I wonder if that is the correct solution. Looking at minus
: i2
always uses tracking_mode::lazy
. Is this the right thing to do here?
In minus
, the input i2
uses tracking_mode::lazy
because it is used with apply_mode::nothing
.
(When actions are disabled, usually the only place that the location is needed is for a global failure, an exception, which usually terminates the parsing run; tracking_mode::eager
usually only makes sense when the location is accessed in multiple places.)
I guess the parse tree is then still supposed to contain the nodes of at<...>
and hence I will commit my initial fix and leave minus
as is.
Steps to Reproduce the Issue
Parse Tree Selector
) somewhereParse Tree Selector
make
Expected Result
Make should be able to compile the file
yaypeg.cpp
.Actual Result
The compiler (Clang on my machine) fails to compile the code printing the following error message:
.
Additional Information
It seems the rule
minus
causes problems. At least everything works fine if I replacewith the code:
in
yaypeg.cpp
:.
System Information
10.14.2
10.0.0
)2.7.1