static std::string macro_to_string(const clang::Preprocessor &pp, const clang::MacroInfo *mi) { std::stringstream ss; for(clang::MacroInfo::tokens_iterator j = mi->tokens_begin(); j != mi->tokens_end(); j++) { const clang::Token &t = (*j); ss << pp.getSpelling(t); } return ss.str(); }