[Mesa-dev] [PATCH 2/2] glsl: use glsl_strtof() instead of glsl_strtod()
Brian Paul
brianp at vmware.com
Wed Jan 23 09:16:27 PST 2013
Since the result of those calls is always assigned to a float.
---
src/glsl/glsl_lexer.ll | 10 +++++-----
src/glsl/s_expression.cpp | 6 +++---
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/src/glsl/glsl_lexer.ll b/src/glsl/glsl_lexer.ll
index 2f66c58..ddc9f80 100644
--- a/src/glsl/glsl_lexer.ll
+++ b/src/glsl/glsl_lexer.ll
@@ -399,23 +399,23 @@ layout {
}
[0-9]+\.[0-9]+([eE][+-]?[0-9]+)?[fF]? {
- yylval->real = glsl_strtod(yytext, NULL);
+ yylval->real = glsl_strtof(yytext, NULL);
return FLOATCONSTANT;
}
\.[0-9]+([eE][+-]?[0-9]+)?[fF]? {
- yylval->real = glsl_strtod(yytext, NULL);
+ yylval->real = glsl_strtof(yytext, NULL);
return FLOATCONSTANT;
}
[0-9]+\.([eE][+-]?[0-9]+)?[fF]? {
- yylval->real = glsl_strtod(yytext, NULL);
+ yylval->real = glsl_strtof(yytext, NULL);
return FLOATCONSTANT;
}
[0-9]+[eE][+-]?[0-9]+[fF]? {
- yylval->real = glsl_strtod(yytext, NULL);
+ yylval->real = glsl_strtof(yytext, NULL);
return FLOATCONSTANT;
}
[0-9]+[fF] {
- yylval->real = glsl_strtod(yytext, NULL);
+ yylval->real = glsl_strtof(yytext, NULL);
return FLOATCONSTANT;
}
diff --git a/src/glsl/s_expression.cpp b/src/glsl/s_expression.cpp
index 57de9d3..1bdf6bc 100644
--- a/src/glsl/s_expression.cpp
+++ b/src/glsl/s_expression.cpp
@@ -66,18 +66,18 @@ read_atom(void *ctx, const char *&src, char *&symbol_buffer)
return NULL; // no atom
// Check for the special symbol '+INF', which means +Infinity. Note: C99
- // requires strtod to parse '+INF' as +Infinity, but we still support some
+ // requires strtof to parse '+INF' as +Infinity, but we still support some
// non-C99-compliant compilers (e.g. MSVC).
if (n == 4 && strncmp(src, "+INF", 4) == 0) {
expr = new(ctx) s_float(std::numeric_limits<float>::infinity());
} else {
// Check if the atom is a number.
char *float_end = NULL;
- double f = glsl_strtod(src, &float_end);
+ float f = glsl_strtof(src, &float_end);
if (float_end != src) {
char *int_end = NULL;
int i = strtol(src, &int_end, 10);
- // If strtod matched more characters, it must have a decimal part
+ // If strtof matched more characters, it must have a decimal part
if (float_end > int_end)
expr = new(ctx) s_float(f);
else
--
1.7.3.4
More information about the mesa-dev
mailing list