Use qualified name-lookup in module. (#2324)

Allow lookup of non-exported names from local classes in function templates.
diff --git a/include/fmt/chrono.h b/include/fmt/chrono.h
index 7aae789..5e03149 100644
--- a/include/fmt/chrono.h
+++ b/include/fmt/chrono.h
@@ -298,7 +298,7 @@
   auto str = os.str();
   if (!detail::is_utf8() || loc == std::locale::classic()) return str;
   // char16_t and char32_t codecvts are broken in MSVC (linkage errors).
-  using code_unit = conditional_t<FMT_MSC_VER, wchar_t, char16_t>;
+  using code_unit = conditional_t<FMT_MSC_VER != 0, wchar_t, char16_t>;
   auto& f = std::use_facet<std::codecvt<code_unit, char, std::mbstate_t>>(loc);
   auto mb = std::mbstate_t();
   const char* from_next = nullptr;
@@ -1246,7 +1246,7 @@
           ctx, out, d);
       f.precision = precision_copy;
       f.localized = localized;
-      parse_chrono_format(begin, end, f);
+      detail::parse_chrono_format(begin, end, f);
     }
     return detail::write(
         ctx.out(), basic_string_view<Char>(buf.data(), buf.size()), specs_copy);
diff --git a/include/fmt/core.h b/include/fmt/core.h
index 8d53d86..d71a2ab 100644
--- a/include/fmt/core.h
+++ b/include/fmt/core.h
@@ -2169,6 +2169,7 @@
 template <typename Char, typename Handler>
 FMT_CONSTEXPR auto parse_width(const Char* begin, const Char* end,
                                Handler&& handler) -> const Char* {
+  using detail::auto_id;
   struct width_adapter {
     Handler& handler;
 
@@ -2198,6 +2199,7 @@
 template <typename Char, typename Handler>
 FMT_CONSTEXPR auto parse_precision(const Char* begin, const Char* end,
                                    Handler&& handler) -> const Char* {
+  using detail::auto_id;
   struct precision_adapter {
     Handler& handler;