DescriptionMove StringComparator<string16>::operator() to header
Enabling /Zc:inline on static release build results in
FAILED: E:\b\depot_tools\python276_bin\python.exe gyp-win-tool link-with-manifests environment.x64 True chrome.dll "E:\b\depot_tools\python276_bin\python.exe gyp-win-tool link-wrapper environment.x64 False link.exe /nologo /IMPLIB:chrome.dll.lib /DLL /OUT:chrome.dll @chrome.dll.rsp" 2 mt.exe rc.exe "obj\chrome\chrome_main_dll.chrome.dll.intermediate.manifest" obj\chrome\chrome_main_dll.chrome.dll.generated.manifest ..\..\chrome\app\chrome.dll.manifest
browser_2.lib(browser_2.character_encoding.obj) : error LNK2019: unresolved external symbol "public: bool __cdecl l10n_util::StringComparator<class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > >::operator()(class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > const &,class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > const &)" (??R?$StringComparator@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@l10n_util@@QEAA_NAEBV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@0@Z) referenced in function "void __cdecl std::_Adjust_heap<struct CharacterEncoding::EncodingInfo *,__int64,struct CharacterEncoding::EncodingInfo,class l10n_util::StringComparator<struct CharacterEncoding::EncodingInfo> >(struct CharacterEncoding::EncodingInfo *,__int64,__int64,struct CharacterEncoding::EncodingInfo &&,class l10n_util::StringComparator<struct CharacterEncoding::EncodingInfo>)" (??$_Adjust_heap@PEAUEncodingInfo@CharacterEncoding@@_JU12@V?$StringComparator@UEncodingInfo@CharacterEncoding@@@l10n_util@@@std@@YAXPEAUEncodingInfo@CharacterEncoding@@_J1$$QEAU12@V?$StringComparator@UEncodingInfo@CharacterEncoding@@@l10n_util@@@Z)
browser_1.lib(browser_1.background_application_list_model.obj) : error LNK2001: unresolved external symbol "public: bool __cdecl l10n_util::StringComparator<class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > >::operator()(class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > const &,class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > const &)" (??R?$StringComparator@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@l10n_util@@QEAA_NAEBV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@0@Z)
So, move StringComparator<base::string16>::operator() into header and
mark it inline, so that it's available in all translation units where it's
used. The previous code was correct, but this makes all compilers happy.
/Zc:inline ref: http://msdn.microsoft.com/en-us/library/dn642448.aspx
R=rnk@chromium.org
TBR=jshin@chromium.org
BUG=350018
Committed: https://crrev.com/51d4852246362fc385663b932c2b0f6f1b4a6092
Cr-Commit-Position: refs/heads/master@{#292559}
Patch Set 1 #Patch Set 2 : inline #Patch Set 3 : . #
Messages
Total messages: 19 (0 generated)
|