| // { dg-lto-do link } |
| // { dg-require-effective-target shared } |
| // { dg-require-effective-target fpic } |
| // { dg-lto-options {{-O0 -fPIC -shared -flto}} } |
| |
| template < typename _Tp, _Tp __v > struct integral_constant { |
| static constexpr _Tp value = __v; |
| }; |
| typedef integral_constant< bool, false > false_type; |
| struct __is_void_helper : false_type {}; |
| struct is_void : __is_void_helper {}; |
| template < typename > struct is_array : false_type {}; |
| namespace __gnu_cxx { |
| enum _Lock_policy { _S_single, _S_mutex, _S_atomic }; // { dg-lto-warning "6: type '__gnu_cxx::_Lock_policy' violates the C\\+\\+ One Definition Rule" } |
| const _Lock_policy __default_lock_policy = _S_atomic; |
| } namespace std { |
| using __gnu_cxx::_Lock_policy; |
| using __gnu_cxx::__default_lock_policy; |
| template < _Lock_policy = __default_lock_policy > class _Sp_counted_base; |
| template < typename, _Lock_policy = __default_lock_policy > class __shared_ptr; |
| template < _Lock_policy > class __shared_count { _Sp_counted_base<> *_M_pi; }; |
| template < typename _Tp, _Lock_policy, bool = is_array< _Tp >::value, |
| bool = is_void::value > |
| class __shared_ptr_access {}; |
| template < typename _Tp, _Lock_policy _Lp > |
| class __shared_ptr : __shared_ptr_access< _Tp, _Lp > { |
| using element_type = _Tp; |
| element_type *_M_ptr; |
| __shared_count< _Lp > _M_refcount; |
| }; |
| template < typename _Tp > class shared_ptr : __shared_ptr< _Tp > {}; |
| } typedef struct _rtl_String rtl_String; |
| typedef struct _rtl_uString rtl_uString; |
| namespace rtl { |
| class OString { |
| rtl_String *pData; |
| }; |
| } using rtl::OString; |
| namespace rtl { |
| class OUString { |
| rtl_uString *pData; |
| }; |
| } using rtl::OUString; |
| namespace tools { |
| template < typename T > class SvRef { |
| T *pObj; |
| }; |
| } class SvRefBase { |
| unsigned nRefCount : 31; |
| unsigned bNoDelete : 1; |
| |
| protected: |
| virtual ~SvRefBase(); |
| }; |
| class ErrCode { |
| unsigned m_value; |
| }; |
| class SvStream; |
| class SfxMedium; |
| struct strong_int { |
| unsigned short m_value; |
| }; |
| typedef strong_int LanguageType; |
| class SotObject : virtual SvRefBase { |
| unsigned short nOwnerLockCount; |
| bool bInClose; |
| }; |
| class BaseStorage; |
| class SotStorage : virtual SotObject { |
| BaseStorage *m_pOwnStg; |
| SvStream *m_pStorStm; |
| ErrCode m_nError; |
| OUString m_aName; |
| bool m_bIsRoot; |
| bool m_bDelStm; |
| OString m_aKey; |
| int m_nVersion; |
| }; |
| class ScDocument; |
| class ScAddress { |
| int nRow; |
| short nCol; |
| short nTab; |
| }; |
| enum XclBiff {}; |
| enum XclOutput {}; |
| enum BiffTyp {}; |
| class SharedFormulaBuffer; |
| class ExtNameBuff; |
| class ExtSheetBuffer; |
| class ExcelToSc; |
| class XclImpColRowSettings; |
| struct RootData { |
| BiffTyp eDateiTyp; |
| ExtSheetBuffer *pExtSheetBuff; |
| SharedFormulaBuffer *pShrfmlaBuff; |
| ExtNameBuff *pExtNameBuff; |
| ExcelToSc *pFmlaConverter; |
| XclImpColRowSettings *pColRowBuff; |
| }; |
| class ScEditEngineDefaulter; |
| class ScHeaderEditEngine; |
| class EditEngine; |
| class ScExtDocOptions; |
| class XclFontPropSetHelper; |
| class XclChPropSetHelper; |
| class XclTracer; |
| struct XclRootData { |
| typedef std::shared_ptr< ScEditEngineDefaulter > ScEEDefaulterRef; |
| typedef std::shared_ptr< ScHeaderEditEngine > ScHeaderEERef; |
| typedef std::shared_ptr< EditEngine > EditEngineRef; |
| typedef std::shared_ptr< XclFontPropSetHelper > XclFontPropSetHlpRef; |
| typedef std::shared_ptr< XclChPropSetHelper > XclChPropSetHlpRef; |
| typedef std::shared_ptr< ScExtDocOptions > ScExtDocOptRef; |
| typedef std::shared_ptr< XclTracer > XclTracerRef; |
| typedef std::shared_ptr< RootData > RootDataRef; |
| XclBiff meBiff; |
| XclOutput meOutput; |
| SfxMedium &mrMedium; |
| tools::SvRef< SotStorage > mxRootStrg; |
| ScDocument &mrDoc; |
| OUString maDocUrl; |
| OUString maBasePath; |
| OUString maUserName; |
| OUString maDefPassword; |
| unsigned short meTextEnc; |
| LanguageType meSysLang; |
| LanguageType meDocLang; |
| LanguageType meUILang; |
| short mnDefApiScript; |
| ScAddress maScMaxPos; |
| ScAddress maXclMaxPos; |
| ScAddress maMaxPos; |
| ScEEDefaulterRef mxEditEngine; |
| ScHeaderEERef mxHFEditEngine; |
| EditEngineRef mxDrawEditEng; |
| XclFontPropSetHlpRef mxFontPropSetHlp; |
| XclChPropSetHlpRef mxChPropSetHlp; |
| ScExtDocOptRef mxExtDocOpt; |
| XclTracerRef mxTracer; |
| RootDataRef mxRD; |
| virtual ~XclRootData(); |
| }; |
| class XclRoot { |
| public: |
| virtual ~XclRoot(); |
| XclRootData &mrData; |
| }; |
| class XclImpRoot : XclRoot {}; |
| class XclImpColRowSettings : XclImpRoot {}; |
| void lcl_ExportExcelBiff() { |
| extern XclRootData aExpData(); |
| } |