#include <iostream>
#include <cmath>  // Uses ::log, which would be the log() here if it were not in a namespace, see http://stackoverflow.com/questions/11892976/why-is-my-log-in-the-std-namespace

// Silently overrides std::log
//double log(double d) { return 420; }

namespace uniquename {
	using namespace std;  // So we don't have to waste space on std:: when not needed.
	
	double log(double d) {
		return 42;
	}
	
	int main() {
		cout << "Our log: " << log(4.2) << endl;
		cout << "Standard log: " << std::log(4.2);
		return 0;
	}
}

// Global wrapper for our contained code.
int main() {
	return uniquename::main();
}