lua: clean up patch fuzz
[openwrt/openwrt.git] / package / utils / lua / patches / 010-lua-5.1.3-lnum-full-260308.patch
index 74b8c6f8f07c82c26b203e907df0e6fad3966b16..ac0722c7073265ebd38a7bc029890747b16c63a3 100644 (file)
@@ -62,7 +62,7 @@
    return (t == LUA_TNONE) ? "no value" : luaT_typenames[t];
  }
  
-@@ -264,6 +265,14 @@ LUA_API int lua_isnumber (lua_State *L, 
+@@ -264,6 +265,14 @@ LUA_API int lua_isnumber (lua_State *L,
  }
  
  
@@ -77,7 +77,7 @@
  LUA_API int lua_isstring (lua_State *L, int idx) {
    int t = lua_type(L, idx);
    return (t == LUA_TSTRING || t == LUA_TNUMBER);
-@@ -309,31 +318,66 @@ LUA_API int lua_lessthan (lua_State *L, 
+@@ -309,31 +318,66 @@ LUA_API int lua_lessthan (lua_State *L,
  }
  
  
      case LUA_TNUMBER: {
        size_t l;
        lua_lock(L);  /* `luaV_tostring' may create a new string */
-@@ -426,6 +471,8 @@ LUA_API void lua_pushnil (lua_State *L) 
+@@ -426,6 +471,8 @@ LUA_API void lua_pushnil (lua_State *L)
  }
  
  
  
  
  LUA_API void lua_pushlstring (lua_State *L, const char *s, size_t len) {
-@@ -569,7 +626,7 @@ LUA_API void lua_rawgeti (lua_State *L, 
+@@ -569,7 +626,7 @@ LUA_API void lua_rawgeti (lua_State *L,
    lua_lock(L);
    o = index2adr(L, idx);
    api_check(L, ttistable(o));
    api_incr_top(L);
    lua_unlock(L);
  }
-@@ -597,6 +654,9 @@ LUA_API int lua_getmetatable (lua_State 
+@@ -597,6 +654,9 @@ LUA_API int lua_getmetatable (lua_State
      case LUA_TUSERDATA:
        mt = uvalue(obj)->metatable;
        break;
      default:
        mt = G(L)->mt[ttype(obj)];
        break;
-@@ -687,7 +747,7 @@ LUA_API void lua_rawseti (lua_State *L, 
+@@ -687,7 +747,7 @@ LUA_API void lua_rawseti (lua_State *L,
    api_checknelems(L, 1);
    o = index2adr(L, idx);
    api_check(L, ttistable(o));
    luaC_barriert(L, hvalue(o), L->top-1);
    L->top--;
    lua_unlock(L);
-@@ -721,7 +781,7 @@ LUA_API int lua_setmetatable (lua_State 
+@@ -721,7 +781,7 @@ LUA_API int lua_setmetatable (lua_State
        break;
      }
      default: {
  
  #define FREELIST_REF  0       /* free list of references */
  
-@@ -66,7 +66,7 @@ LUALIB_API int luaL_typerror (lua_State 
+@@ -66,7 +66,7 @@ LUALIB_API int luaL_typerror (lua_State
  
  
  static void tag_error (lua_State *L, int narg, int tag) {
  
  
  
-@@ -54,20 +56,25 @@ static int luaB_tonumber (lua_State *L) 
+@@ -54,20 +56,25 @@ static int luaB_tonumber (lua_State *L)
    int base = luaL_optint(L, 2, 10);
    if (base == 10) {  /* standard conversion */
      luaL_checkany(L, 1);
      case VKNUM:
      case VTRUE:
      case VFALSE:
-@@ -451,6 +489,10 @@ int luaK_exp2RK (FuncState *fs, expdesc 
+@@ -451,6 +489,10 @@ int luaK_exp2RK (FuncState *fs, expdesc
        if (fs->nk <= MAXINDEXRK) {  /* constant fit in RK operand? */
          e->u.s.info = (e->k == VNIL)  ? nilK(fs) :
                        (e->k == VKNUM) ? luaK_numberK(fs, e->u.nval) :
    lua_assert(isdigit(ls->current));
    do {
      save_and_next(ls);
-@@ -202,8 +215,9 @@ static void read_numeral (LexState *ls, 
+@@ -202,8 +215,9 @@ static void read_numeral (LexState *ls,
      save_and_next(ls);
    save(ls, '\0');
    buffreplace(ls, '.', ls->decpoint);  /* follow locale for decimal point */
 -#define PI (3.14159265358979323846)
 -#define RADIANS_PER_DEGREE (PI/180.0)
 -
+-
 +#ifdef LNUM_FLOAT
 +# define PI (3.14159265358979323846F)
 +#elif defined(M_PI)
 +# define PI (3.14159265358979323846264338327950288)
 +#endif
 +#define RADIANS_PER_DEGREE (PI/180)
++
 +#undef HUGE
 +#ifdef LNUM_FLOAT
 +# define HUGE HUGE_VALF
      case LUA_TBOOLEAN:
        return bvalue(t1) == bvalue(t2);  /* boolean true must be 1 !! */
      case LUA_TLIGHTUSERDATA:
-@@ -86,21 +106,6 @@ int luaO_rawequalObj (const TValue *t1, 
+@@ -86,21 +106,6 @@ int luaO_rawequalObj (const TValue *t1,
    }
  }
  
      nums[ceillog2(k)]++;  /* count as such */
      return 1;
    }
-@@ -308,7 +322,7 @@ static void resize (lua_State *L, Table 
+@@ -308,7 +322,7 @@ static void resize (lua_State *L, Table
      /* re-insert elements from vanishing slice */
      for (i=nasize; i<oldasize; i++) {
        if (!ttisnil(&t->array[i]))
      } while (n);
      return luaO_nilobject;
    }
-@@ -470,14 +487,12 @@ const TValue *luaH_get (Table *t, const 
+@@ -470,14 +487,12 @@ const TValue *luaH_get (Table *t, const
    switch (ttype(key)) {
      case LUA_TNIL: return luaO_nilobject;
      case LUA_TSTRING: return luaH_getstr(t, rawtsvalue(key));
  /*
  @@ LUAI_USER_ALIGNMENT_T is a type that requires maximum alignment.
  ** CHANGE it if your system requires alignments larger than double. (For
-@@ -728,28 +652,6 @@ union luai_Cast { double l_d; long l_l; 
+@@ -728,28 +652,6 @@ union luai_Cast { double l_d; long l_l;
  #define luai_userstateyield(L,n)      ((void)L)
  
  
  /*
 --- a/src/lundump.c
 +++ b/src/lundump.c
-@@ -73,6 +73,13 @@ static lua_Number LoadNumber(LoadState* 
+@@ -73,6 +73,13 @@ static lua_Number LoadNumber(LoadState*
   return x;
  }
  
  static TString* LoadString(LoadState* S)
  {
   size_t size;
-@@ -119,6 +126,9 @@ static void LoadConstants(LoadState* S, 
+@@ -119,6 +126,9 @@ static void LoadConstants(LoadState* S,
     case LUA_TNUMBER:
        setnvalue(o,LoadNumber(S));
        break;
      setsvalue2s(L, obj, luaS_new(L, s));
      return 1;
    }
-@@ -222,59 +234,127 @@ static int l_strcmp (const TString *ls, 
+@@ -222,59 +234,127 @@ static int l_strcmp (const TString *ls,
  }
  
  
 +        case TM_POW: if (try_powint( ri, ib, ic)) return; break;
 +        case TM_UNM: if (try_unmint( ri, ib)) return; break;
 +        default: lua_assert(0);
-+      }
+       }
 +    }
 +    /* Fallback to floating point, when leaving range. */
-+
 +#ifdef LNUM_COMPLEX
 +    if ((nvalue_img(b)!=0) || (nvalue_img(c)!=0)) {
 +      lua_Complex r;
 +          default: lua_assert(0); r=0;
 +        }
 +        setnvalue_complex( ra, r );
-       }
++      }
 +      return;
 +    }
 +#endif
 +  if (!call_binTM(L, rb, rc, ra, op))
 +    luaG_aritherror(L, rb, rc);
 +}
++
 +/* Helper macro to sort arithmetic operations into four categories:
 + *  TK_INT: integer - integer operands
 + *  TK_NUMBER: number - number (non complex, either may be integer)