controlla meglio con pazienza a me questo lo compila correttamente
codice:
#include <iostream>

using namespace std;
class SyntaxTree {};

class foo {
        virtual void translate(stringstream& ss, string class_name, bool convert = false, char dest_type = 0) = 0;
        virtual void translate(SyntaxTree* t, stringstream& ss, string class_name, bool convert = false, char dest_type = 0) = 0;
public:
        foo () {}
         
};          


int main () {

  return 0;
}