Received a message that this code failed ..... Not sure where the problem is .... #define _AMD64_ #include <Windows.h> #include <map> template <typename K, typename V> class interval_map { friend void IntervalMapTest(); V m_valBegin; // default constructor, whtever it is std::map<K, V> m_map; public: // constructor associates whole range of K with val interval_map( V const& val ) : m_valBegin( val ) {} // Assign value val to interval [keyBegin, keyEnd). // Overwrite previous values in this interval. // Conforming to the C++ Standard Library conventions, the interval // includes keyBegin, but excludes keyEnd. // If !( keyBegin < keyEnd ), this designates an empty interval, // and assign must do nothing. void assign( K const& keyBegin, K const& keyEnd, V const& val ) { // ATTENTION: *** Not sure if should be a return or a throw. It is not clear how error should be treated. ...