idl/source/objects/object.cxx |    9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

New commits:
commit bc6ea55b419a0b18f3d370028eff50414dda3721
Author:     Caolán McNamara <caolan.mcnam...@collabora.com>
AuthorDate: Wed Jul 9 15:11:09 2025 +0100
Commit:     Caolán McNamara <caolan.mcnam...@collabora.com>
CommitDate: Fri Jul 11 18:30:35 2025 +0200

    use constexpr for idl "a ... Args_Impl" objects
    
    objdump -t instdir/program/libsclo.so |grep -v data.rel.ro|grep 
\\.data|c++filt|grep -v s_cd|wc
    
    before: 115
    after: 96
    Change-Id: I880d1934d7794fb57567f1e542e8a4feff645a83
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187651
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com>

diff --git a/idl/source/objects/object.cxx b/idl/source/objects/object.cxx
index 9138ab075a2d..1f430cc393b7 100644
--- a/idl/source/objects/object.cxx
+++ b/idl/source/objects/object.cxx
@@ -269,7 +269,14 @@ void SvMetaClass::WriteSfx( SvIdlDataBase & rBase, 
SvStream & rOutStm )
         return;
     }
     // write parameter array
-    rOutStm.WriteOString("static const SfxFormalArgument 
a").WriteOString(GetName()).WriteOString("Args_Impl[] =") << endl;
+    rOutStm.WriteOString("static ");
+#if defined(_MSC_VER) && _MSC_VER < 1931
+    
//https://developercommunity.visualstudio.com/t/Taking-the-address-of-a-constexpr-variab/1550408
+    rOutStm.WriteOString("const");
+#else
+    rOutStm.WriteOString("constexpr");
+#endif
+    rOutStm.WriteOString(" SfxFormalArgument 
a").WriteOString(GetName()).WriteOString("Args_Impl[] =") << endl;
     rOutStm.WriteChar('{') << endl;
 
     std::vector<sal_uInt32> aSuperList;

Reply via email to