summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorMasaki Muranaka <[email protected]>2013-03-12 19:59:12 +0900
committerMasaki Muranaka <[email protected]>2013-03-12 19:59:12 +0900
commit2c54cf2e591053a47087a1da5ba53a22a4097322 (patch)
treefb5a53e1caa9cab7da8fa3158bea62735ba9c494 /src
parente1d2f50e472c783b8b5b59305b29719e11b1948c (diff)
downloadmruby-2c54cf2e591053a47087a1da5ba53a22a4097322.tar.gz
mruby-2c54cf2e591053a47087a1da5ba53a22a4097322.zip
Add comments for paradnoid (a.k.a. mission critical) engineers.
Diffstat (limited to 'src')
-rw-r--r--src/parse.y6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/parse.y b/src/parse.y
index 8553738e8..33b2d5272 100644
--- a/src/parse.y
+++ b/src/parse.y
@@ -3399,11 +3399,14 @@ scan_oct(const int *start, int len, int *retlen)
const int *s = start;
unsigned long retval = 0;
+ /* PARANOID: assert(len <= 3) */
+
while (len-- && *s >= '0' && *s <= '7') {
retval <<= 3;
retval |= *s++ - '0';
}
*retlen = s - start;
+
return retval;
}
@@ -3415,12 +3418,15 @@ scan_hex(const int *start, int len, int *retlen)
register unsigned long retval = 0;
char *tmp;
+ /* PARANOID: assert(len <= 2) */
+
while (len-- && *s && (tmp = strchr(hexdigit, *s))) {
retval <<= 4;
retval |= (tmp - hexdigit) & 15;
s++;
}
*retlen = s - start;
+
return retval;
}