diff liboctave/numeric/gsvd.cc @ 27101:097774bed4ed

move some static functions inside octave namespace In most files that define static functions and use the octave namespace, define the static fucntions inside the namespace. Files affected: octave-qscintilla.cc, main-window.cc, variable-editor-model.cc, variable-editor.cc, welcome-wizard.cc, call-stack.cc, environment.cc, help.cc, input.cc, load-path.cc, sysdep.cc, text-renderer.cc, url-handle-manager.cc, __ode15__.cc, ov-typeinfo.cc, aepbalance.cc, chol.cc, gsvd.cc, file-ops.cc, lo-array-errwarn.cc, lo-regexp.cc, oct-glob.cc, and oct-sparse.cc.
author John W. Eaton <jwe@octave.org>
date Tue, 21 May 2019 19:50:59 +0000
parents 00f796120a6d
children 84ff9953faa1
line wrap: on
line diff
--- a/liboctave/numeric/gsvd.cc	Tue May 21 17:39:13 2019 +0000
+++ b/liboctave/numeric/gsvd.cc	Tue May 21 19:50:59 2019 +0000
@@ -39,52 +39,54 @@
 #include "lo-lapack-proto.h"
 #include "oct-shlib.h"
 
-static std::map<std::string, void *> gsvd_fcn;
+namespace octave
+{
+  static std::map<std::string, void *> gsvd_fcn;
 
-static bool have_DGGSVD3 = false;
-static bool gsvd_initialized = false;
+  static bool have_DGGSVD3 = false;
+  static bool gsvd_initialized = false;
 
-/* Hack to stringize macro results. */
+  /* Hack to stringize macro results. */
 #define xSTRINGIZE(x) #x
 #define STRINGIZE(x) xSTRINGIZE(x)
 
-void initialize_gsvd (void)
-{
-  if (gsvd_initialized)
-    return;
+  static void initialize_gsvd (void)
+  {
+    if (gsvd_initialized)
+      return;
 
-  octave::dynamic_library libs ("");
-  if (! libs)
-    {
-      // FIXME: Should we throw an error if we cannot check the libraries?
-      have_DGGSVD3 = false;
-      return;
-    }
+    octave::dynamic_library libs ("");
+    if (! libs)
+      {
+        // FIXME: Should we throw an error if we cannot check the libraries?
+        have_DGGSVD3 = false;
+        return;
+      }
 
-  have_DGGSVD3 = (libs.search (STRINGIZE (F77_FUNC (dggsvd3, DGGSVD3)))
-                  != nullptr);
+    have_DGGSVD3 = (libs.search (STRINGIZE (F77_FUNC (dggsvd3, DGGSVD3)))
+                    != nullptr);
 
-  if (have_DGGSVD3)
-    {
-      gsvd_fcn["dg"] = libs.search (STRINGIZE (F77_FUNC (dggsvd3, DGGSVD3)));
-      gsvd_fcn["sg"] = libs.search (STRINGIZE (F77_FUNC (sggsvd3, SGGSVD3)));
-      gsvd_fcn["zg"] = libs.search (STRINGIZE (F77_FUNC (zggsvd3, ZGGSVD3)));
-      gsvd_fcn["cg"] = libs.search (STRINGIZE (F77_FUNC (cggsvd3, CGGSVD3)));
-    }
-  else
-    {
-      gsvd_fcn["dg"] = libs.search (STRINGIZE (F77_FUNC (dggsvd, DGGSVD)));
-      gsvd_fcn["sg"] = libs.search (STRINGIZE (F77_FUNC (sggsvd, SGGSVD)));
-      gsvd_fcn["zg"] = libs.search (STRINGIZE (F77_FUNC (zggsvd, ZGGSVD)));
-      gsvd_fcn["cg"] = libs.search (STRINGIZE (F77_FUNC (cggsvd, CGGSVD)));
-    }
-  gsvd_initialized = true;
-}
+    if (have_DGGSVD3)
+      {
+        gsvd_fcn["dg"] = libs.search (STRINGIZE (F77_FUNC (dggsvd3, DGGSVD3)));
+        gsvd_fcn["sg"] = libs.search (STRINGIZE (F77_FUNC (sggsvd3, SGGSVD3)));
+        gsvd_fcn["zg"] = libs.search (STRINGIZE (F77_FUNC (zggsvd3, ZGGSVD3)));
+        gsvd_fcn["cg"] = libs.search (STRINGIZE (F77_FUNC (cggsvd3, CGGSVD3)));
+      }
+    else
+      {
+        gsvd_fcn["dg"] = libs.search (STRINGIZE (F77_FUNC (dggsvd, DGGSVD)));
+        gsvd_fcn["sg"] = libs.search (STRINGIZE (F77_FUNC (sggsvd, SGGSVD)));
+        gsvd_fcn["zg"] = libs.search (STRINGIZE (F77_FUNC (zggsvd, ZGGSVD)));
+        gsvd_fcn["cg"] = libs.search (STRINGIZE (F77_FUNC (cggsvd, CGGSVD)));
+      }
+    gsvd_initialized = true;
+  }
 
-template<class T1>
-struct real_ggsvd_ptr
-{
-  typedef F77_RET_T (*type)
+  template<class T1>
+  struct real_ggsvd_ptr
+  {
+    typedef F77_RET_T (*type)
     (F77_CONST_CHAR_ARG_DECL,   // JOBU
      F77_CONST_CHAR_ARG_DECL,   // JOBV
      F77_CONST_CHAR_ARG_DECL,   // JOBQ
@@ -111,12 +113,12 @@
      F77_CHAR_ARG_LEN_DECL
      F77_CHAR_ARG_LEN_DECL
      F77_CHAR_ARG_LEN_DECL);
-};
+  };
 
-template<class T1>
-struct real_ggsvd3_ptr
-{
-  typedef F77_RET_T (*type)
+  template<class T1>
+  struct real_ggsvd3_ptr
+  {
+    typedef F77_RET_T (*type)
     (F77_CONST_CHAR_ARG_DECL,   // JOBU
      F77_CONST_CHAR_ARG_DECL,   // JOBV
      F77_CONST_CHAR_ARG_DECL,   // JOBQ
@@ -144,12 +146,12 @@
      F77_CHAR_ARG_LEN_DECL
      F77_CHAR_ARG_LEN_DECL
      F77_CHAR_ARG_LEN_DECL);
-};
+  };
 
-template<class T1, class T2>
-struct comp_ggsvd_ptr
-{
-  typedef F77_RET_T (*type)
+  template<class T1, class T2>
+  struct comp_ggsvd_ptr
+  {
+    typedef F77_RET_T (*type)
     (F77_CONST_CHAR_ARG_DECL,   // JOBU
      F77_CONST_CHAR_ARG_DECL,   // JOBV
      F77_CONST_CHAR_ARG_DECL,   // JOBQ
@@ -177,12 +179,12 @@
      F77_CHAR_ARG_LEN_DECL
      F77_CHAR_ARG_LEN_DECL
      F77_CHAR_ARG_LEN_DECL);
-};
+  };
 
-template<class T1, class T2>
-struct comp_ggsvd3_ptr
-{
-  typedef F77_RET_T (*type)
+  template<class T1, class T2>
+  struct comp_ggsvd3_ptr
+  {
+    typedef F77_RET_T (*type)
     (F77_CONST_CHAR_ARG_DECL,   // JOBU
      F77_CONST_CHAR_ARG_DECL,   // JOBV
      F77_CONST_CHAR_ARG_DECL,   // JOBQ
@@ -211,20 +213,18 @@
      F77_CHAR_ARG_LEN_DECL
      F77_CHAR_ARG_LEN_DECL
      F77_CHAR_ARG_LEN_DECL);
-};
+  };
 
-// template specializations
-typedef real_ggsvd3_ptr<F77_DBLE>::type dggsvd3_type;
-typedef real_ggsvd_ptr<F77_DBLE>::type dggsvd_type;
-typedef real_ggsvd3_ptr<F77_REAL>::type sggsvd3_type;
-typedef real_ggsvd_ptr<F77_REAL>::type sggsvd_type;
-typedef comp_ggsvd3_ptr<F77_DBLE_CMPLX, F77_DBLE>::type zggsvd3_type;
-typedef comp_ggsvd_ptr<F77_DBLE_CMPLX, F77_DBLE>::type zggsvd_type;
-typedef comp_ggsvd3_ptr<F77_CMPLX, F77_REAL>::type cggsvd3_type;
-typedef comp_ggsvd_ptr<F77_CMPLX, F77_REAL>::type cggsvd_type;
+  // template specializations
+  typedef real_ggsvd3_ptr<F77_DBLE>::type dggsvd3_type;
+  typedef real_ggsvd_ptr<F77_DBLE>::type dggsvd_type;
+  typedef real_ggsvd3_ptr<F77_REAL>::type sggsvd3_type;
+  typedef real_ggsvd_ptr<F77_REAL>::type sggsvd_type;
+  typedef comp_ggsvd3_ptr<F77_DBLE_CMPLX, F77_DBLE>::type zggsvd3_type;
+  typedef comp_ggsvd_ptr<F77_DBLE_CMPLX, F77_DBLE>::type zggsvd_type;
+  typedef comp_ggsvd3_ptr<F77_CMPLX, F77_REAL>::type cggsvd3_type;
+  typedef comp_ggsvd_ptr<F77_CMPLX, F77_REAL>::type cggsvd_type;
 
-namespace octave
-{
   namespace math
   {
     template <>