| Index: src/base/platform/time.h
 | 
| diff --git a/src/base/platform/time.h b/src/base/platform/time.h
 | 
| index be62014f91db7e0535d47cc7aa25737d9c1801f9..ed1751268f59bf49abb934c718937c4d72d4eccd 100644
 | 
| --- a/src/base/platform/time.h
 | 
| +++ b/src/base/platform/time.h
 | 
| @@ -9,6 +9,7 @@
 | 
|  #include <iosfwd>
 | 
|  #include <limits>
 | 
|  
 | 
| +#include "src/base/base-export.h"
 | 
|  #include "src/base/bits.h"
 | 
|  #include "src/base/macros.h"
 | 
|  #include "src/base/safe_math.h"
 | 
| @@ -42,7 +43,7 @@
 | 
|  // This class represents a duration of time, internally represented in
 | 
|  // microseonds.
 | 
|  
 | 
| -class TimeDelta final {
 | 
| +class V8_BASE_EXPORT TimeDelta final {
 | 
|   public:
 | 
|    TimeDelta() : delta_(0) {}
 | 
|  
 | 
| @@ -277,7 +278,7 @@
 | 
|  // This class represents an absolute point in time, internally represented as
 | 
|  // microseconds (s/1,000,000) since 00:00:00 UTC, January 1, 1970.
 | 
|  
 | 
| -class Time final : public time_internal::TimeBase<Time> {
 | 
| +class V8_BASE_EXPORT Time final : public time_internal::TimeBase<Time> {
 | 
|   public:
 | 
|    // Contains the NULL time. Use Time::Now() to get the current time.
 | 
|    Time() : TimeBase(0) {}
 | 
| @@ -322,7 +323,7 @@
 | 
|    explicit Time(int64_t us) : TimeBase(us) {}
 | 
|  };
 | 
|  
 | 
| -std::ostream& operator<<(std::ostream&, const Time&);
 | 
| +V8_BASE_EXPORT std::ostream& operator<<(std::ostream&, const Time&);
 | 
|  
 | 
|  inline Time operator+(const TimeDelta& delta, const Time& time) {
 | 
|    return time + delta;
 | 
| @@ -339,7 +340,8 @@
 | 
|  // Time::Now() may actually decrease or jump).  But note that TimeTicks may
 | 
|  // "stand still", for example if the computer suspended.
 | 
|  
 | 
| -class TimeTicks final : public time_internal::TimeBase<TimeTicks> {
 | 
| +class V8_BASE_EXPORT TimeTicks final
 | 
| +    : public time_internal::TimeBase<TimeTicks> {
 | 
|   public:
 | 
|    TimeTicks() : TimeBase(0) {}
 | 
|  
 | 
| @@ -376,7 +378,8 @@
 | 
|  
 | 
|  // Represents a clock, specific to a particular thread, than runs only while the
 | 
|  // thread is running.
 | 
| -class ThreadTicks final : public time_internal::TimeBase<ThreadTicks> {
 | 
| +class V8_BASE_EXPORT ThreadTicks final
 | 
| +    : public time_internal::TimeBase<ThreadTicks> {
 | 
|   public:
 | 
|    ThreadTicks() : TimeBase(0) {}
 | 
|  
 | 
| @@ -408,6 +411,9 @@
 | 
|  #endif
 | 
|  
 | 
|   private:
 | 
| +  template <class TimeClass>
 | 
| +  friend class time_internal::TimeBase;
 | 
| +
 | 
|    // Please use Now() or GetForThread() to create a new object. This is for
 | 
|    // internal use and testing. Ticks are in microseconds.
 | 
|    explicit ThreadTicks(int64_t ticks) : TimeBase(ticks) {}
 | 
| 
 |