Workaround a bug in template instation in MSVC 2017.3 with /permissive-
[folly.git] / folly / stats / Histogram.cpp
index 5a24f1ea97c38b7dcb77a1c6c1e39f35a13f559c..bbf5c36ba00586111ba364a5d038c2520a967eae 100644 (file)
@@ -24,6 +24,7 @@
 #include <folly/stats/Histogram.h>
 #include <folly/stats/Histogram-defs.h>
 
+#if !FOLLY_MSVC_USE_WORKAROUND_FOR_C5037
 namespace folly {
 
 template class Histogram<int64_t>;
@@ -40,14 +41,17 @@ template size_t detail::HistogramBuckets<int64_t, Histogram<int64_t>::Bucket>::
         Histogram<int64_t>::CountFromBucket countFromBucket,
         double* lowPct,
         double* highPct) const;
-template int64_t detail::HistogramBuckets<int64_t, Histogram<int64_t>::Bucket>
-  ::getPercentileEstimate<Histogram<int64_t>::CountFromBucket,
-                          Histogram<int64_t>::AvgFromBucket>(
-    double pct,
-    Histogram<int64_t>::CountFromBucket countFromBucket,
-    Histogram<int64_t>::AvgFromBucket avgFromBucket) const;
-template uint64_t detail::HistogramBuckets<int64_t, Histogram<int64_t>::Bucket>
-  ::computeTotalCount<Histogram<int64_t>::CountFromBucket>(
-    Histogram<int64_t>::CountFromBucket countFromBucket) const;
+template int64_t detail::HistogramBuckets<int64_t, Histogram<int64_t>::Bucket>::
+    getPercentileEstimate<
+        Histogram<int64_t>::CountFromBucket,
+        Histogram<int64_t>::AvgFromBucket>(
+        double pct,
+        Histogram<int64_t>::CountFromBucket countFromBucket,
+        Histogram<int64_t>::AvgFromBucket avgFromBucket) const;
+template uint64_t
+detail::HistogramBuckets<int64_t, Histogram<int64_t>::Bucket>::
+    computeTotalCount<Histogram<int64_t>::CountFromBucket>(
+        Histogram<int64_t>::CountFromBucket countFromBucket) const;
 
-} // folly
+} // namespace folly
+#endif