changeset 33343:eb8a24370c2b

Do not hardcode visibility attributes in macros that are used downstream. * ov-base.h (DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API, DECLARE_OV_BASE_TYPEID_FUNCTIONS_AND_DATA_API, DECLARE_TEMPLATE_OV_TYPEID_SPECIALIZATIONS_API): Add macros that allow passing visibility attributed. * remaining files: Use new macros passing OCTINTERP_API.
author Markus Mützel <markus.muetzel@gmx.de>
date Sat, 06 Apr 2024 18:44:45 +0200
parents c2dbaa9dca4f
children 3606817b9994
files libinterp/octave-value/ov-base.h libinterp/octave-value/ov-bool-mat.h libinterp/octave-value/ov-bool-sparse.h libinterp/octave-value/ov-bool.h libinterp/octave-value/ov-builtin.h libinterp/octave-value/ov-cell.h libinterp/octave-value/ov-colon.h libinterp/octave-value/ov-complex.h libinterp/octave-value/ov-cs-list.h libinterp/octave-value/ov-cx-diag.h libinterp/octave-value/ov-cx-mat.h libinterp/octave-value/ov-cx-sparse.h libinterp/octave-value/ov-dld-fcn.h libinterp/octave-value/ov-fcn-handle.h libinterp/octave-value/ov-float.h libinterp/octave-value/ov-flt-complex.h libinterp/octave-value/ov-flt-cx-diag.h libinterp/octave-value/ov-flt-cx-mat.h libinterp/octave-value/ov-flt-re-diag.h libinterp/octave-value/ov-flt-re-mat.h libinterp/octave-value/ov-intx.h libinterp/octave-value/ov-lazy-idx.h libinterp/octave-value/ov-legacy-range.h libinterp/octave-value/ov-magic-int.h libinterp/octave-value/ov-mex-fcn.h libinterp/octave-value/ov-null-mat.h libinterp/octave-value/ov-oncleanup.h libinterp/octave-value/ov-perm.h libinterp/octave-value/ov-range.h libinterp/octave-value/ov-re-diag.h libinterp/octave-value/ov-re-mat.h libinterp/octave-value/ov-re-sparse.h libinterp/octave-value/ov-scalar.h libinterp/octave-value/ov-str-mat.h libinterp/octave-value/ov-struct.h libinterp/octave-value/ov-usr-fcn.h
diffstat 36 files changed, 68 insertions(+), 58 deletions(-) [+]
line wrap: on
line diff
--- a/libinterp/octave-value/ov-base.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-base.h	Sat Apr 06 18:44:45 2024 +0200
@@ -179,12 +179,19 @@
 #define OCTAVE_EMPTY_CPP_ARG /* empty */
 
 #define DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA                          \
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA2 (OCTAVE_EMPTY_CPP_ARG)
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA2 (OCTAVE_EMPTY_CPP_ARG,        \
+                                         OCTAVE_EMPTY_CPP_ARG)
+
+#define DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API(API)                 \
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA2 (OCTAVE_EMPTY_CPP_ARG, API)
 
 #define DECLARE_OV_BASE_TYPEID_FUNCTIONS_AND_DATA                     \
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA2(virtual)
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA2 (virtual, OCTAVE_EMPTY_CPP_ARG)
 
-#define DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA2(VIRTUAL)                \
+#define DECLARE_OV_BASE_TYPEID_FUNCTIONS_AND_DATA_API(API)            \
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA2 (virtual, API)
+
+#define DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA2(VIRTUAL, API)           \
   public:                                                             \
     VIRTUAL int type_id () const { return s_t_id; }                   \
     VIRTUAL std::string type_name () const { return s_t_name; }       \
@@ -192,21 +199,24 @@
     static int static_type_id () { return s_t_id; }                   \
     static std::string static_type_name () { return s_t_name; }       \
     static std::string static_class_name () { return s_c_name; }      \
-    OCTINTERP_API static void register_type ();                       \
-    OCTINTERP_API static void register_type (octave::type_info&);     \
+    API static void register_type ();                                 \
+    API static void register_type (octave::type_info&);               \
                                                                       \
   private:                                                            \
-    static OCTINTERP_API int s_t_id;                                  \
-    static OCTINTERP_API const std::string s_t_name;                  \
-    static OCTINTERP_API const std::string s_c_name;
+    static API int s_t_id;                                            \
+    static API const std::string s_t_name;                            \
+    static API const std::string s_c_name;
 
 #define DECLARE_TEMPLATE_OV_TYPEID_SPECIALIZATIONS(cls, type)         \
-  template <> OCTINTERP_API void cls<type>::register_type ();         \
-  template <> OCTINTERP_API void                                      \
-  OCTINTERP_API cls<type>::register_type (octave::type_info&);        \
-  template <> OCTINTERP_API int cls<type>::s_t_id;                    \
-  template <> OCTINTERP_API const std::string cls<type>::s_t_name;    \
-  template <> OCTINTERP_API const std::string cls<type>::s_c_name;
+  DECLARE_TEMPLATE_OV_TYPEID_SPECIALIZATIONS_API (cls, type,          \
+                                                  OCTAVE_EMPTY_CPP_ARG)
+
+#define DECLARE_TEMPLATE_OV_TYPEID_SPECIALIZATIONS_API(cls, type, API) \
+  template <> API void cls<type>::register_type ();                   \
+  template <> API void cls<type>::register_type (octave::type_info&); \
+  template <> API int cls<type>::s_t_id;                              \
+  template <> API const std::string cls<type>::s_t_name;              \
+  template <> API const std::string cls<type>::s_c_name;
 
 // FIXME: The 'new' operator below creates an 8-byte memory leak for every
 // registered data type (of which there are 58 built-in to Octave, plus any
--- a/libinterp/octave-value/ov-bool-mat.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-bool-mat.h	Sat Apr 06 18:44:45 2024 +0200
@@ -242,7 +242,7 @@
 
 protected:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-bool-sparse.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-bool-sparse.h	Sat Apr 06 18:44:45 2024 +0200
@@ -150,7 +150,7 @@
 
 protected:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-bool.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-bool.h	Sat Apr 06 18:44:45 2024 +0200
@@ -258,7 +258,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-builtin.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-builtin.h	Sat Apr 06 18:44:45 2024 +0200
@@ -116,7 +116,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-cell.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-cell.h	Sat Apr 06 18:44:45 2024 +0200
@@ -191,7 +191,7 @@
 
   mutable std::unique_ptr<Array<std::string>> m_cellstr_cache;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-colon.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-colon.h	Sat Apr 06 18:44:45 2024 +0200
@@ -77,7 +77,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-complex.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-complex.h	Sat Apr 06 18:44:45 2024 +0200
@@ -205,7 +205,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 typedef octave_complex octave_complex_scalar;
--- a/libinterp/octave-value/ov-cs-list.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-cs-list.h	Sat Apr 06 18:44:45 2024 +0200
@@ -90,7 +90,7 @@
   // The list of Octave values.
   octave_value_list m_list;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-cx-diag.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-cx-diag.h	Sat Apr 06 18:44:45 2024 +0200
@@ -97,7 +97,7 @@
 
   OCTINTERP_API bool chk_valid_scalar (const octave_value&, Complex&) const;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-cx-mat.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-cx-mat.h	Sat Apr 06 18:44:45 2024 +0200
@@ -181,7 +181,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-cx-sparse.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-cx-sparse.h	Sat Apr 06 18:44:45 2024 +0200
@@ -142,7 +142,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-dld-fcn.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-dld-fcn.h	Sat Apr 06 18:44:45 2024 +0200
@@ -104,7 +104,7 @@
   // on the file to see if it has changed.
   bool m_system_fcn_file;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-fcn-handle.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-fcn-handle.h	Sat Apr 06 18:44:45 2024 +0200
@@ -381,7 +381,7 @@
 
   octave::base_fcn_handle * get_rep () const { return m_rep.get (); }
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 extern bool
--- a/libinterp/octave-value/ov-float.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-float.h	Sat Apr 06 18:44:45 2024 +0200
@@ -274,7 +274,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-flt-complex.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-flt-complex.h	Sat Apr 06 18:44:45 2024 +0200
@@ -196,7 +196,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 typedef octave_float_complex octave_float_complex_scalar;
--- a/libinterp/octave-value/ov-flt-cx-diag.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-flt-cx-diag.h	Sat Apr 06 18:44:45 2024 +0200
@@ -93,7 +93,7 @@
   bool chk_valid_scalar (const octave_value&,
                          FloatComplex&) const;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-flt-cx-mat.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-flt-cx-mat.h	Sat Apr 06 18:44:45 2024 +0200
@@ -177,7 +177,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-flt-re-diag.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-flt-re-diag.h	Sat Apr 06 18:44:45 2024 +0200
@@ -103,7 +103,7 @@
   bool chk_valid_scalar (const octave_value&,
                          float&) const;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-flt-re-mat.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-flt-re-mat.h	Sat Apr 06 18:44:45 2024 +0200
@@ -220,7 +220,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-intx.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-intx.h	Sat Apr 06 18:44:45 2024 +0200
@@ -383,7 +383,7 @@
 
   static octave_hdf5_id s_hdf5_save_type;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 extern template class OCTINTERP_EXTERN_TEMPLATE_API octave_base_int_scalar<OCTAVE_INT_T>;
@@ -698,5 +698,5 @@
 
   static octave_hdf5_id s_hdf5_save_type;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
--- a/libinterp/octave-value/ov-lazy-idx.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-lazy-idx.h	Sat Apr 06 18:44:45 2024 +0200
@@ -275,7 +275,7 @@
   static octave_base_value *
   numeric_conversion_function (const octave_base_value&);
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-legacy-range.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-legacy-range.h	Sat Apr 06 18:44:45 2024 +0200
@@ -104,7 +104,7 @@
 
   std::unique_ptr<Range> m_range;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-magic-int.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-magic-int.h	Sat Apr 06 18:44:45 2024 +0200
@@ -295,7 +295,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 class OCTINTERP_API octave_magic_int : public octave_base_magic_int<octave_int64>
@@ -319,7 +319,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-mex-fcn.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-mex-fcn.h	Sat Apr 06 18:44:45 2024 +0200
@@ -121,7 +121,7 @@
   // on the file to see if it has changed.
   bool m_is_system_fcn_file;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-null-mat.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-null-mat.h	Sat Apr 06 18:44:45 2024 +0200
@@ -56,7 +56,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 // The special "" value
@@ -78,7 +78,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 // The special '' value
@@ -101,7 +101,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-oncleanup.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-oncleanup.h	Sat Apr 06 18:44:45 2024 +0200
@@ -99,7 +99,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 
 protected:
 
--- a/libinterp/octave-value/ov-perm.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-perm.h	Sat Apr 06 18:44:45 2024 +0200
@@ -263,7 +263,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-range.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-range.h	Sat Apr 06 18:44:45 2024 +0200
@@ -86,7 +86,7 @@
   int m_base = 0;
   int m_increment = 0;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 // For now, we only need ov_range<double> but we don't attempt to
@@ -522,10 +522,10 @@
 
   static octave_hdf5_id hdf5_save_type;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
-DECLARE_TEMPLATE_OV_TYPEID_SPECIALIZATIONS (ov_range, double)
+DECLARE_TEMPLATE_OV_TYPEID_SPECIALIZATIONS_API (ov_range, double, OCTINTERP_API)
 
 // For now, enable only ov_range<double>.
 
--- a/libinterp/octave-value/ov-re-diag.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-re-diag.h	Sat Apr 06 18:44:45 2024 +0200
@@ -108,7 +108,7 @@
   bool chk_valid_scalar (const octave_value&,
                          double&) const;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-re-mat.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-re-mat.h	Sat Apr 06 18:44:45 2024 +0200
@@ -246,7 +246,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-re-sparse.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-re-sparse.h	Sat Apr 06 18:44:45 2024 +0200
@@ -148,7 +148,7 @@
 private:
   octave_value map (double (*fcn) (double)) const;
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-scalar.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-scalar.h	Sat Apr 06 18:44:45 2024 +0200
@@ -287,7 +287,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-str-mat.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-str-mat.h	Sat Apr 06 18:44:45 2024 +0200
@@ -179,7 +179,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 typedef octave_char_matrix_str octave_char_matrix_dq_str;
@@ -264,7 +264,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-struct.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-struct.h	Sat Apr 06 18:44:45 2024 +0200
@@ -169,7 +169,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 class octave_scalar_struct : public octave_base_value
@@ -295,7 +295,7 @@
 
   octave_value to_array ();
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif
--- a/libinterp/octave-value/ov-usr-fcn.h	Sat Apr 06 18:04:59 2024 +0200
+++ b/libinterp/octave-value/ov-usr-fcn.h	Sat Apr 06 18:44:45 2024 +0200
@@ -199,7 +199,7 @@
 
 private:
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 // User-defined functions.
@@ -455,7 +455,7 @@
 
   void restore_warning_states ();
 
-  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+  DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API (OCTINTERP_API)
 };
 
 #endif