{"action":"created","issue":{"url":"https://api.github.com/repos/google/re2/issues/54","labels_url":"https://api.github.com/repos/google/re2/issues/54/labels{/name}","comments_url":"https://api.github.com/repos/google/re2/issues/54/comments","events_url":"https://api.github.com/repos/google/re2/issues/54/events","html_url":"https://github.com/google/re2/issues/54","id":110134036,"number":54,"title":"Compiling without pcre in MSVC 2013 causes link errors","user":{"login":"DThiebaud","id":1722014,"avatar_url":"https://avatars.githubusercontent.com/u/1722014?v=3","gravatar_id":"","url":"https://api.github.com/users/DThiebaud","html_url":"https://github.com/DThiebaud","followers_url":"https://api.github.com/users/DThiebaud/followers","following_url":"https://api.github.com/users/DThiebaud/following{/other_user}","gists_url":"https://api.github.com/users/DThiebaud/gists{/gist_id}","starred_url":"https://api.github.com/users/DThiebaud/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DThiebaud/subscriptions","organizations_url":"https://api.github.com/users/DThiebaud/orgs","repos_url":"https://api.github.com/users/DThiebaud/repos","events_url":"https://api.github.com/users/DThiebaud/events{/privacy}","received_events_url":"https://api.github.com/users/DThiebaud/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-10-07T01:17:20Z","updated_at":"2015-10-07T09:10:10Z","closed_at":null,"body":"If I try to compile the test suite in MSVC 2013 without pcre, (removing pcre.cc from project test and project benchmark) I get link errors because entry points from pcre.cc are not found:\r\n\r\n1>------ Build started: Project: benchmark, Configuration: Release x64 ------\r\n2>------ Build started: Project: dfa_test, Configuration: Release x64 ------\r\n2>  dfa_test.cc\r\n1>  benchmark.cc\r\n1>E:\\src\\re2\\util\\benchmark.cc(29): error C2079: 'tv' uses undefined struct 'nsec::timeval'\r\n1>E:\\src\\re2\\util\\benchmark.cc(30): error C3861: 'gettimeofday': identifier not found\r\n1>E:\\src\\re2\\util\\benchmark.cc(32): error C2228: left of '.tv_sec' must have class/struct/union\r\n1>          type is 'int'\r\n1>E:\\src\\re2\\util\\benchmark.cc(32): error C2228: left of '.tv_usec' must have class/struct/union\r\n1>          type is 'int'\r\n1>E:\\src\\re2\\util\\benchmark.cc(115): warning C4244: '=' : conversion from 'double' to 'int', possible loss of data\r\n1>E:\\src\\re2\\util\\benchmark.cc(117): warning C4244: '=' : conversion from 'double' to 'int', possible loss of data\r\n2>E:\\src\\re2\\util/thread.h(25): error C2146: syntax error : missing ';' before identifier 'pid_'\r\n2>E:\\src\\re2\\util/thread.h(25): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int\r\n2>E:\\src\\re2\\re2/prog.h(99): warning C4244: 'return' : conversion from '__int64' to 'int', possible loss of data\r\n2>E:\\src\\re2\\re2\\testing\\dfa_test.cc(111): warning C4244: '=' : conversion from '__int64' to 'int', possible loss of data\r\n3>------ Build started: Project: exhaustive1_test, Configuration: Release x64 ------\r\n4>------ Build started: Project: exhaustive2_test, Configuration: Release x64 ------\r\n3>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: __cdecl re2::PCRE::PCRE(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class re2::PCRE_Options const &)\" (??0PCRE@re2@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVPCRE_Options@1@@Z) referenced in function \"public: __cdecl re2::TestInstance::TestInstance(class re2::StringPiece const &,enum re2::Prog::MatchKind,enum re2::Regexp::ParseFlags)\" (??0TestInstance@re2@@QEAA@AEBVStringPiece@1@W4MatchKind@Prog@1@W4ParseFlags@Regexp@1@@Z)\r\n3>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: __cdecl re2::PCRE::~PCRE(void)\" (??1PCRE@re2@@QEAA@XZ) referenced in function \"public: __cdecl re2::TestInstance::~TestInstance(void)\" (??1TestInstance@re2@@QEAA@XZ)\r\n3>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: bool __cdecl re2::PCRE::HitLimit(void)\" (?HitLimit@PCRE@re2@@QEAA_NXZ) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n3>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: void __cdecl re2::PCRE::ClearHitLimit(void)\" (?ClearHitLimit@PCRE@re2@@QEAAXXZ) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n3>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: bool __cdecl re2::PCRE::DoMatch(class re2::StringPiece const &,enum re2::PCRE::Anchor,int *,class re2::PCRE::Arg const * const *,int)const \" (?DoMatch@PCRE@re2@@QEBA_NAEBVStringPiece@2@W4Anchor@12@PEAHPEBQEBVArg@12@H@Z) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n3>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"private: static bool __cdecl re2::PCRE::Arg::parse_null(char const *,int,void *)\" (?parse_null@Arg@PCRE@re2@@CA_NPEBDHPEAX@Z) referenced in function \"public: __cdecl re2::PCRE::Arg::Arg(void)\" (??0Arg@PCRE@re2@@QEAA@XZ)\r\n3>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"private: static bool __cdecl re2::PCRE::Arg::parse_stringpiece(char const *,int,void *)\" (?parse_stringpiece@Arg@PCRE@re2@@CA_NPEBDHPEAX@Z) referenced in function \"public: __cdecl re2::PCRE::Arg::Arg(class re2::StringPiece *)\" (??0Arg@PCRE@re2@@QEAA@PEAVStringPiece@2@@Z)\r\n3>E:\\src\\re2\\Release\\exhaustive1_test.exe : fatal error LNK1120: 7 unresolved externals\r\n4>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: __cdecl re2::PCRE::PCRE(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class re2::PCRE_Options const &)\" (??0PCRE@re2@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVPCRE_Options@1@@Z) referenced in function \"public: __cdecl re2::TestInstance::TestInstance(class re2::StringPiece const &,enum re2::Prog::MatchKind,enum re2::Regexp::ParseFlags)\" (??0TestInstance@re2@@QEAA@AEBVStringPiece@1@W4MatchKind@Prog@1@W4ParseFlags@Regexp@1@@Z)\r\n4>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: __cdecl re2::PCRE::~PCRE(void)\" (??1PCRE@re2@@QEAA@XZ) referenced in function \"public: __cdecl re2::TestInstance::~TestInstance(void)\" (??1TestInstance@re2@@QEAA@XZ)\r\n4>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: bool __cdecl re2::PCRE::HitLimit(void)\" (?HitLimit@PCRE@re2@@QEAA_NXZ) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n4>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: void __cdecl re2::PCRE::ClearHitLimit(void)\" (?ClearHitLimit@PCRE@re2@@QEAAXXZ) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n4>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: bool __cdecl re2::PCRE::DoMatch(class re2::StringPiece const &,enum re2::PCRE::Anchor,int *,class re2::PCRE::Arg const * const *,int)const \" (?DoMatch@PCRE@re2@@QEBA_NAEBVStringPiece@2@W4Anchor@12@PEAHPEBQEBVArg@12@H@Z) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n4>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"private: static bool __cdecl re2::PCRE::Arg::parse_null(char const *,int,void *)\" (?parse_null@Arg@PCRE@re2@@CA_NPEBDHPEAX@Z) referenced in function \"public: __cdecl re2::PCRE::Arg::Arg(void)\" (??0Arg@PCRE@re2@@QEAA@XZ)\r\n4>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"private: static bool __cdecl re2::PCRE::Arg::parse_stringpiece(char const *,int,void *)\" (?parse_stringpiece@Arg@PCRE@re2@@CA_NPEBDHPEAX@Z) referenced in function \"public: __cdecl re2::PCRE::Arg::Arg(class re2::StringPiece *)\" (??0Arg@PCRE@re2@@QEAA@PEAVStringPiece@2@@Z)\r\n4>E:\\src\\re2\\Release\\exhaustive2_test.exe : fatal error LNK1120: 7 unresolved externals\r\n5>------ Build started: Project: exhaustive3_test, Configuration: Release x64 ------\r\n6>------ Build started: Project: exhaustive_test, Configuration: Release x64 ------\r\n5>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: __cdecl re2::PCRE::PCRE(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class re2::PCRE_Options const &)\" (??0PCRE@re2@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVPCRE_Options@1@@Z) referenced in function \"public: __cdecl re2::TestInstance::TestInstance(class re2::StringPiece const &,enum re2::Prog::MatchKind,enum re2::Regexp::ParseFlags)\" (??0TestInstance@re2@@QEAA@AEBVStringPiece@1@W4MatchKind@Prog@1@W4ParseFlags@Regexp@1@@Z)\r\n5>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: __cdecl re2::PCRE::~PCRE(void)\" (??1PCRE@re2@@QEAA@XZ) referenced in function \"public: __cdecl re2::TestInstance::~TestInstance(void)\" (??1TestInstance@re2@@QEAA@XZ)\r\n5>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: bool __cdecl re2::PCRE::HitLimit(void)\" (?HitLimit@PCRE@re2@@QEAA_NXZ) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n5>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: void __cdecl re2::PCRE::ClearHitLimit(void)\" (?ClearHitLimit@PCRE@re2@@QEAAXXZ) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n5>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: bool __cdecl re2::PCRE::DoMatch(class re2::StringPiece const &,enum re2::PCRE::Anchor,int *,class re2::PCRE::Arg const * const *,int)const \" (?DoMatch@PCRE@re2@@QEBA_NAEBVStringPiece@2@W4Anchor@12@PEAHPEBQEBVArg@12@H@Z) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n5>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"private: static bool __cdecl re2::PCRE::Arg::parse_null(char const *,int,void *)\" (?parse_null@Arg@PCRE@re2@@CA_NPEBDHPEAX@Z) referenced in function \"public: __cdecl re2::PCRE::Arg::Arg(void)\" (??0Arg@PCRE@re2@@QEAA@XZ)\r\n5>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"private: static bool __cdecl re2::PCRE::Arg::parse_stringpiece(char const *,int,void *)\" (?parse_stringpiece@Arg@PCRE@re2@@CA_NPEBDHPEAX@Z) referenced in function \"public: __cdecl re2::PCRE::Arg::Arg(class re2::StringPiece *)\" (??0Arg@PCRE@re2@@QEAA@PEAVStringPiece@2@@Z)\r\n5>E:\\src\\re2\\Release\\exhaustive3_test.exe : fatal error LNK1120: 7 unresolved externals\r\n6>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: __cdecl re2::PCRE::PCRE(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class re2::PCRE_Options const &)\" (??0PCRE@re2@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVPCRE_Options@1@@Z) referenced in function \"public: __cdecl re2::TestInstance::TestInstance(class re2::StringPiece const &,enum re2::Prog::MatchKind,enum re2::Regexp::ParseFlags)\" (??0TestInstance@re2@@QEAA@AEBVStringPiece@1@W4MatchKind@Prog@1@W4ParseFlags@Regexp@1@@Z)\r\n6>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: __cdecl re2::PCRE::~PCRE(void)\" (??1PCRE@re2@@QEAA@XZ) referenced in function \"public: __cdecl re2::TestInstance::~TestInstance(void)\" (??1TestInstance@re2@@QEAA@XZ)\r\n6>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: bool __cdecl re2::PCRE::HitLimit(void)\" (?HitLimit@PCRE@re2@@QEAA_NXZ) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n6>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: void __cdecl re2::PCRE::ClearHitLimit(void)\" (?ClearHitLimit@PCRE@re2@@QEAAXXZ) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n6>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: bool __cdecl re2::PCRE::DoMatch(class re2::StringPiece const &,enum re2::PCRE::Anchor,int *,class re2::PCRE::Arg const * const *,int)const \" (?DoMatch@PCRE@re2@@QEBA_NAEBVStringPiece@2@W4Anchor@12@PEAHPEBQEBVArg@12@H@Z) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n6>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"private: static bool __cdecl re2::PCRE::Arg::parse_null(char const *,int,void *)\" (?parse_null@Arg@PCRE@re2@@CA_NPEBDHPEAX@Z) referenced in function \"public: __cdecl re2::PCRE::Arg::Arg(void)\" (??0Arg@PCRE@re2@@QEAA@XZ)\r\n6>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"private: static bool __cdecl re2::PCRE::Arg::parse_stringpiece(char const *,int,void *)\" (?parse_stringpiece@Arg@PCRE@re2@@CA_NPEBDHPEAX@Z) referenced in function \"public: __cdecl re2::PCRE::Arg::Arg(class re2::StringPiece *)\" (??0Arg@PCRE@re2@@QEAA@PEAVStringPiece@2@@Z)\r\n6>E:\\src\\re2\\Release\\exhaustive_test.exe : fatal error LNK1120: 7 unresolved externals\r\n7>------ Build started: Project: random_test, Configuration: Release x64 ------\r\n8>------ Build started: Project: re2_test, Configuration: Release x64 ------\r\n8>  re2_test.cc\r\n8>E:\\src\\re2\\re2\\testing\\re2_test.cc(9): fatal error C1083: Cannot open include file: 'sys/mman.h': No such file or directory\r\n7>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: __cdecl re2::PCRE::PCRE(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class re2::PCRE_Options const &)\" (??0PCRE@re2@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVPCRE_Options@1@@Z) referenced in function \"public: __cdecl re2::TestInstance::TestInstance(class re2::StringPiece const &,enum re2::Prog::MatchKind,enum re2::Regexp::ParseFlags)\" (??0TestInstance@re2@@QEAA@AEBVStringPiece@1@W4MatchKind@Prog@1@W4ParseFlags@Regexp@1@@Z)\r\n7>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: __cdecl re2::PCRE::~PCRE(void)\" (??1PCRE@re2@@QEAA@XZ) referenced in function \"public: __cdecl re2::TestInstance::~TestInstance(void)\" (??1TestInstance@re2@@QEAA@XZ)\r\n7>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: bool __cdecl re2::PCRE::HitLimit(void)\" (?HitLimit@PCRE@re2@@QEAA_NXZ) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n7>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: void __cdecl re2::PCRE::ClearHitLimit(void)\" (?ClearHitLimit@PCRE@re2@@QEAAXXZ) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n7>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: bool __cdecl re2::PCRE::DoMatch(class re2::StringPiece const &,enum re2::PCRE::Anchor,int *,class re2::PCRE::Arg const * const *,int)const \" (?DoMatch@PCRE@re2@@QEBA_NAEBVStringPiece@2@W4Anchor@12@PEAHPEBQEBVArg@12@H@Z) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n7>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"private: static bool __cdecl re2::PCRE::Arg::parse_null(char const *,int,void *)\" (?parse_null@Arg@PCRE@re2@@CA_NPEBDHPEAX@Z) referenced in function \"public: __cdecl re2::PCRE::Arg::Arg(void)\" (??0Arg@PCRE@re2@@QEAA@XZ)\r\n7>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"private: static bool __cdecl re2::PCRE::Arg::parse_stringpiece(char const *,int,void *)\" (?parse_stringpiece@Arg@PCRE@re2@@CA_NPEBDHPEAX@Z) referenced in function \"public: __cdecl re2::PCRE::Arg::Arg(class re2::StringPiece *)\" (??0Arg@PCRE@re2@@QEAA@PEAVStringPiece@2@@Z)\r\n7>E:\\src\\re2\\Release\\random_test.exe : fatal error LNK1120: 7 unresolved externals\r\n9>------ Build started: Project: regexp_benchmark, Configuration: Release x64 ------\r\n10>------ Build started: Project: search_test, Configuration: Release x64 ------\r\n9>LINK : fatal error LNK1181: cannot open input file 'Release\\benchmark.lib'\r\n10>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: __cdecl re2::PCRE::PCRE(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class re2::PCRE_Options const &)\" (??0PCRE@re2@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVPCRE_Options@1@@Z) referenced in function \"public: __cdecl re2::TestInstance::TestInstance(class re2::StringPiece const &,enum re2::Prog::MatchKind,enum re2::Regexp::ParseFlags)\" (??0TestInstance@re2@@QEAA@AEBVStringPiece@1@W4MatchKind@Prog@1@W4ParseFlags@Regexp@1@@Z)\r\n10>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: __cdecl re2::PCRE::~PCRE(void)\" (??1PCRE@re2@@QEAA@XZ) referenced in function \"public: __cdecl re2::TestInstance::~TestInstance(void)\" (??1TestInstance@re2@@QEAA@XZ)\r\n10>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: bool __cdecl re2::PCRE::HitLimit(void)\" (?HitLimit@PCRE@re2@@QEAA_NXZ) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n10>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: void __cdecl re2::PCRE::ClearHitLimit(void)\" (?ClearHitLimit@PCRE@re2@@QEAAXXZ) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n10>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"public: bool __cdecl re2::PCRE::DoMatch(class re2::StringPiece const &,enum re2::PCRE::Anchor,int *,class re2::PCRE::Arg const * const *,int)const \" (?DoMatch@PCRE@re2@@QEBA_NAEBVStringPiece@2@W4Anchor@12@PEAHPEBQEBVArg@12@H@Z) referenced in function \"private: void __cdecl re2::TestInstance::RunSearch(enum re2::Engine,class re2::StringPiece const &,class re2::StringPiece const &,enum re2::Prog::Anchor,struct re2::TestInstance::Result *)\" (?RunSearch@TestInstance@re2@@AEAAXW4Engine@2@AEBVStringPiece@2@1W4Anchor@Prog@2@PEAUResult@12@@Z)\r\n10>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"private: static bool __cdecl re2::PCRE::Arg::parse_null(char const *,int,void *)\" (?parse_null@Arg@PCRE@re2@@CA_NPEBDHPEAX@Z) referenced in function \"public: __cdecl re2::PCRE::Arg::Arg(void)\" (??0Arg@PCRE@re2@@QEAA@XZ)\r\n10>test.lib(tester.obj) : error LNK2019: unresolved external symbol \"private: static bool __cdecl re2::PCRE::Arg::parse_stringpiece(char const *,int,void *)\" (?parse_stringpiece@Arg@PCRE@re2@@CA_NPEBDHPEAX@Z) referenced in function \"public: __cdecl re2::PCRE::Arg::Arg(class re2::StringPiece *)\" (??0Arg@PCRE@re2@@QEAA@PEAVStringPiece@2@@Z)\r\n10>E:\\src\\re2\\Release\\search_test.exe : fatal error LNK1120: 7 unresolved externals\r\n11>------ Skipped Build: Project: ALL_BUILD, Configuration: Release x64 ------\r\n11>Project not selected to build for this solution configuration \r\n========== Build: 0 succeeded, 10 failed, 15 up-to-date, 1 skipped ==========\r\n"},"comment":{"url":"https://api.github.com/repos/google/re2/issues/comments/146127252","html_url":"https://github.com/google/re2/issues/54#issuecomment-146127252","issue_url":"https://api.github.com/repos/google/re2/issues/54","id":146127252,"user":{"login":"junyer","id":3593753,"avatar_url":"https://avatars.githubusercontent.com/u/3593753?v=3","gravatar_id":"","url":"https://api.github.com/users/junyer","html_url":"https://github.com/junyer","followers_url":"https://api.github.com/users/junyer/followers","following_url":"https://api.github.com/users/junyer/following{/other_user}","gists_url":"https://api.github.com/users/junyer/gists{/gist_id}","starred_url":"https://api.github.com/users/junyer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/junyer/subscriptions","organizations_url":"https://api.github.com/users/junyer/orgs","repos_url":"https://api.github.com/users/junyer/repos","events_url":"https://api.github.com/users/junyer/events{/privacy}","received_events_url":"https://api.github.com/users/junyer/received_events","type":"User","site_admin":false},"created_at":"2015-10-07T09:10:09Z","updated_at":"2015-10-07T09:10:09Z","body":"The `LOG_0` issue seemed very strange at first, but it looks as though something in a Windows header file defines `ERROR` as `0` and so Google code typically has to kludge around that in various ways. :("}}