The preprocessor expression defined(COMPILER_GCC) is used in code copied
from the Chromium project, but COMPILER_GCC is not defined by GCC itself,
but by the following expression in Chromium's build_config.h:
#if defined(__GNUC__)
#define COMPILER_GCC 1
#elif // ...
It must therefore be changed when copying the code out of the Chromium
code base.
This reverts commit df876cedb5.
This commit broke internal builds with the error message:
----
CMake Error at CMakeLists.txt:422 (target_link_libraries):
Cannot specify link libraries for target "phonenumber" which is not built
by this project.
----
Includes corresponding changes for C++ and JavaScript as well to keep the implementations in sync. (C++ and JS didn't exhibit buggy behavior because the corresponding substring methods don't throw errors for invalid start positions.)
Bugfix for https://github.com/googlei18n/libphonenumber/issues/592
that can be followed easily (the re2 stuff with Mercurial was removed
because it's a rat-hole and currently needs a manual patch to the sources
which is not something that this document should be trying to describe.
This also requires updating code that previously took a shortcut and
depended on the Rune and char32 typedefs to be identical (which is no
longer the case, as Rune is now unsigned).
R=jia.shao.peng@gmail.com
BUG=
Review URL: https://codereview.appspot.com/136920043
With strict error checking, 32 bit compiles on some platforms fail with
the error:
"error: this decimal constant is unsigned only in ISO C90"
This patch fixes the error by adding the "u" unsigned qualifier to the
integers.
Author: daniel@pocock.proR=jia.shao.peng@gmail.com
BUG=
Review URL: https://codereview.appspot.com/123610044