rem: if (str[0] == 'q' || str[0] == 'Q')
add: if (str.empty() || str[0] == 'q' || str[0] == 'Q')
context: main(){    cout << "/////////////////////////////////////////////////////////\n\n";    cout << "\t\tRoman Numerals Parser\n\n";    cout << "/////////////////////////////////////////////////////////\n\n";    cout << "Type a Roman Numeral ...or [q or Q] to quit\n\n";    //  Start grammar definition    string str;    while (getline(cin, str))    {        if (str[0] == 'q' || str[0] == 'Q')            break;        unsigned n = 0;        roman roman_p(n);        if (parse(str.c_str(), roman_p).full)        {            cout << "parsing succeeded\n";            cout << "result = " << n << "\n\n";        }        else        {            cout << "parsing failed\n\n";        }    }    cout << "Bye... :-) \n\n";    return 0;}