exception: Fix noexcept and source location

Change-Id: I1d344d41c9e3aecb51ed53fdb2d6f2a72363da71
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/include/stdplus/exception.hpp b/include/stdplus/exception.hpp
index 88bf9cb..5390320 100644
--- a/include/stdplus/exception.hpp
+++ b/include/stdplus/exception.hpp
@@ -36,14 +36,6 @@
 };
 
 template <typename F>
-auto ignore(F&& f, const detail::source_location location =
-                       detail::source_location::current())
-{
-    return ignore(std::forward<F>(f), location.file_name(), location.line(),
-                  location.function_name());
-}
-
-template <typename F>
 auto ignore(F&& f, const char* file, int line, const char* func) noexcept
 {
     return
@@ -71,6 +63,14 @@
 }
 
 template <typename F>
+auto ignore(F&& f, const detail::source_location location =
+                       detail::source_location::current()) noexcept
+{
+    return ignore(std::forward<F>(f), location.file_name(), location.line(),
+                  location.function_name());
+}
+
+template <typename F>
 auto ignoreQuiet(F&& f) noexcept
 {
     return [f = std::move(f)](auto&&... args) mutable noexcept {