summaryrefslogtreecommitdiffstats
path: root/src/cppvalue.cpp
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2021-04-27 19:16:48 (GMT)
committerGitHub <noreply@github.com>2021-04-27 19:16:48 (GMT)
commit91f735e7c57a855bab0f18c72700cb06f961b9ba (patch)
tree8e7930391df3f319fb7309b2658abce9b3604035 /src/cppvalue.cpp
parent56fcc20b40aa413611579763d367714d7663b143 (diff)
parente12a17cfba22bb0f8f7a331bf38237ed09866ddd (diff)
downloadDoxygen-91f735e7c57a855bab0f18c72700cb06f961b9ba.zip
Doxygen-91f735e7c57a855bab0f18c72700cb06f961b9ba.tar.gz
Doxygen-91f735e7c57a855bab0f18c72700cb06f961b9ba.tar.bz2
Merge pull request #8504 from albert-github/feature/bug_bin_expressions
Warning from preprocessor regarding binary literals
Diffstat (limited to 'src/cppvalue.cpp')
-rw-r--r--src/cppvalue.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/cppvalue.cpp b/src/cppvalue.cpp
index 77677d9..8cd7c5c 100644
--- a/src/cppvalue.cpp
+++ b/src/cppvalue.cpp
@@ -51,6 +51,16 @@ CPPValue parseHexadecimal(const std::string& token)
return CPPValue(val);
}
+CPPValue parseBinary(const std::string& token)
+{
+ long val = 0;
+ for (const char *p = token.c_str(); *p != 0; p++)
+ {
+ if (*p >= '0' && *p <= '1') val = val * 2 + *p - '0';
+ }
+ return CPPValue(val);
+}
+
CPPValue parseCharacter(const std::string& token) // does not work for '\n' and the alike
{
if (token[1]=='\\')