diff options
Diffstat (limited to 'bridges')
-rw-r--r-- | bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp.cxx | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp.cxx index a22ac393b5f7..001384e005fc 100644 --- a/bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp.cxx +++ b/bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp.cxx @@ -187,24 +187,32 @@ static void MapReturn(sal_uInt32 r0, sal_uInt32 r1, typelib_TypeDescriptionRefer #if !defined(__ARM_PCS_VFP) && (defined(__ARM_EABI__) || defined(__SOFTFP__)) pRegisterReturn[0] = r0; #else +#if defined __clang__ #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wuninitialized" +#endif register float fret asm("s0"); *reinterpret_cast<float *>(pRegisterReturn) = fret; +#if defined __clang__ #pragma clang diagnostic pop #endif +#endif break; case typelib_TypeClass_DOUBLE: #if !defined(__ARM_PCS_VFP) && (defined(__ARM_EABI__) || defined(__SOFTFP__)) pRegisterReturn[1] = r1; pRegisterReturn[0] = r0; #else +#if defined __clang__ #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wuninitialized" +#endif register double dret asm("d0"); *reinterpret_cast<double *>(pRegisterReturn) = dret; +#if defined __clang__ #pragma clang diagnostic pop #endif +#endif break; case typelib_TypeClass_STRUCT: case typelib_TypeClass_EXCEPTION: |