Hi all,
I built the libreoffice-4-0 branch from git on Ubuntu 10.04 today, which has
g++ 4.4.3 as compiler. The build fails in linguistic/source/lngsvcmgr.cxx and
the attached patch is necessary to make the build continue. Apart from this
issue, the build is completed just fine.
I don't know why exactly the patch is necessary, perhaps it is a compiler bug.
regards,
-kris.
>From 18704de3403a69bbbc897ecd6ad653acfa89ce72 Mon Sep 17 00:00:00 2001
From: Kristian Rietveld <k...@lanedo.com>
Date: Sat, 23 Feb 2013 21:34:46 +0100
Subject: [PATCH] Introduce temporary variables to stop compiler from complaining
Without this change, g++ 4.4.3 on Ubuntu 10.04 gives an error message
saying that the parameter cannot be a variably modified type.
Change-Id: I4de54179583df731cb1ec559bfcb087ce4553968
---
linguistic/source/lngsvcmgr.cxx | 9 ++++++---
1 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/linguistic/source/lngsvcmgr.cxx b/linguistic/source/lngsvcmgr.cxx
index 93697e6..e153db9 100644
--- a/linguistic/source/lngsvcmgr.cxx
+++ b/linguistic/source/lngsvcmgr.cxx
@@ -744,7 +744,8 @@ void LngSvcMgr::UpdateAll()
const OUString *pNodeName = aNodeNames.getConstArray();
for (i = 0; i < nNodeNames; ++i)
{
- Locale aLocale( LanguageTag( pNodeName[i]).getLocale() );
+ const OUString &tmp(pNodeName[i]);
+ Locale aLocale( LanguageTag( tmp ).getLocale() );
Sequence< OUString > aCfgSvcs( getConfiguredServices( aService, aLocale ));
Sequence< OUString > aAvailSvcs( getAvailableServices( aService, aLocale ));
@@ -763,7 +764,8 @@ void LngSvcMgr::UpdateAll()
const Locale *pAvailLocale = aAvailLocales.getConstArray();
for (i = 0; i < nAvailLocales; ++i)
{
- OUString aCfgLocaleStr( LanguageTag( pAvailLocale[i] ).getBcp47() );
+ const Locale &tmp(pAvailLocale[i]);
+ OUString aCfgLocaleStr( LanguageTag( tmp ).getBcp47() );
Sequence< OUString > aAvailSvcs( getAvailableServices( aService, pAvailLocale[i] ));
@@ -1840,7 +1842,8 @@ sal_Bool LngSvcMgr::SaveCfgSvcs( const String &rServiceName )
aCfgAny <<= aSvcImplNames;
DBG_ASSERT( aCfgAny.hasValue(), "missing value for 'Any' type" );
- OUString aCfgLocaleStr( LanguageTag( pLocale[i] ).getBcp47() );
+ const lang::Locale &tmp(pLocale[i]);
+ OUString aCfgLocaleStr( LanguageTag( tmp ).getBcp47() );
pValue->Value = aCfgAny;
pValue->Name = aNodeName;
pValue->Name += OUString::valueOf( (sal_Unicode) '/' );
--
1.7.0.4
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice