rem: parse(first, last, p, space_p);
add: parse(first, last, p);
context: parse(char const* filename){    ifstream in(filename);    if (!in)    {        cerr << "Could not open input file: " << filename << endl;        return;    }    string out_name(filename);    out_name += ".html";    ofstream out(out_name.c_str());    if (!out)    {        cerr << "Could not open output file: " << out_name << endl;        return;    }    in.unsetf(ios::skipws); //  Turn of white space skipping on the stream    vector<char> vec;    std::copy(        istream_iterator<char>(in),        istream_iterator<char>(),        std::back_inserter(vec));    out << "<html>\n" << "<head>\n";    out << "<!-- Generated by the Spirit (http://spirit.sf.net) ";    out << "C++ to HTML Converter -->\n";    out << "<title>\n";    out << out_name << "</title>\n";    out << "<link rel=\"stylesheet\" href=\"style.css\" type=\"text/css\">";    out << "</head>\n";    out << "<body>\n" << "<pre>\n";    vector<char>::const_iterator first = vec.begin();    vector<char>::const_iterator last = vec.end();    cpp_to_html p(out);    parse_info<vector<char>::const_iterator> info =        parse(first, last, p, space_p);    if (!info.full)    {        cerr << "---PARSING FAILURE---\n";        cerr << string(info.stop, last);    }    out << "</pre>\n" << "</body>\n" << "</html>\n";}