Hello, I have a tracer, that should log going in and out of a function: class Tracer { public: Tracer(Logger logger, std::string function, std::string file) : _logger(logger), _function(function), _file(file) {} ~Tracer() { using namespace boost::log; // attribute_cast<attributes::mutable_constant<int>>(core::get()->get_global_attributes()["Line"]).set(1); attribute_cast<attributes::mutable_constant<std::string>>(core::get()->get_global_attributes()["File"]).set(_file); attribute_cast<attributes::mutable_constant<std::string>>(core::get()->get_global_attributes()["Function"]).set(_function); BOOST_LOG_SEV(_logger, trivial::severity_level::trace) << "Leaving " << _function; } private: Logger _logger; std::string _function; std::string _file; }; This works fine, but as soon as I uncomment the line that sets the Line attribut I don't get any Leaving messages anymore. The attributes are added beforehand like that: using namespace boost::log; add_common_attributes(); core::get()->add_global_attribute("Scope", attributes::named_scope()); core::get()->add_global_attribute("Rank", attributes::constant<int>(5)); core::get()->add_global_attribute("Line", attributes::mutable_constant<int>(5)); core::get()->add_global_attribute("File", attributes::mutable_constant<std::string>("")); core::get()->add_global_attribute("Function", attributes::mutable_constant<std::string>("")); Setting all other attributes, similiar to Line works fine. I'm puzzled because Line does not seem to be a reserved name, it works somewhere else and the boost::log sources reveal no relevant usages of that name. What could be the problem here? I'm happy to send anyone the complate code (approx. 150 lines in total) Thanks! Florian