thank you, that solved this first issue. thank you for your prompt response.
I now want to keep it from skipping withespaces. I haven't figured out how
to do this yet, but I will follow your advice about the driver.
Thanks a lot
Ludovic Aubert
2007/6/7, Hartmut Kaiser
Ludovic Aubert wrote:
I have written a sample program which uses boost wave and I am trying to run it on its own source code. The environnement (especially the stl) is Microsoft Visual C++ 2005. Since typically an include file like "vector" will be preprocessed many times (once for every compilation unit), I am saving all the preprocessed tokens in a map
,string> > token, so that token[path][make_tuple(line,col)] = value. Then for each path I am using a forward iterator to spit out all the values into a buffer. The major trouble I have is with the macros #define STD_BEGIN namespace std { #define STD_END } defined in the file "yvals.h" Somehow, STD_BEGIN and STD_END are replaced by blanks and I get "namespace std{}" at the end of the files instead. Looks like the line and col for these items are wrong ...
The problem is, that all tokens always carry the positional information of the place of their initial occurrence, i.e. tokens from a replacement text of a macro carry the position where they have been defined, and not where they have been inserted in the output.
I would like to know if someone has already successfully preprocessed the stl delivered with Visual C++ 2005.
Sure, this should work. Try to preprocess these headers with the wave driver applet (boost/tools/wave).
Regards Hartmut
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users