glsl: use glsl_strtof() instead of glsl_strtod()
authorBrian Paul <brianp@vmware.com>
Wed, 23 Jan 2013 00:50:53 +0000 (17:50 -0700)
committerBrian Paul <brianp@vmware.com>
Fri, 25 Jan 2013 22:41:40 +0000 (15:41 -0700)
Since the result of those calls is always assigned to a float.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
src/glsl/glsl_lexer.ll
src/glsl/s_expression.cpp

index 2f66c5828a8707ebc35f3be8f5dd387a8e053dda..ddc9f80737d0af16370819b909ec29afb212970f 100644 (file)
@@ -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;
                        }
 
index 57de9d334a29981968aa7025d77295addcff554c..1bdf6bca61f454069663115b7b60e7dbbc859638 100644 (file)
@@ -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