瀏覽代碼

fixes and some minor bc adjustment.

Jeff Hutchinson 4 年之前
父節點
當前提交
bfc0109485

+ 1 - 0
Engine/source/console/CMDscan.l

@@ -213,6 +213,7 @@ HEXDIGIT [a-fA-F0-9]
 "true"      { CMDlval.i = MakeToken< int >( 1, lineIndex ); return INTCONST; }
 "false"     { CMDlval.i = MakeToken< int >( 0, lineIndex ); return INTCONST; }
 {VAR}       { return(Sc_ScanVar()); }
+
 {ID}        { return Sc_ScanIdent(); }
 0[xX]{HEXDIGIT}+ return(Sc_ScanHex());
 {INTEGER}   { CMDtext[CMDleng] = 0; CMDlval.i = MakeToken< int >( dAtoi(CMDtext), lineIndex ); return INTCONST; }

+ 2 - 2
Engine/source/console/astNodes.cpp

@@ -165,7 +165,7 @@ static U32 conversionOp(TypeReq src, TypeReq dst)
       case TypeReqString:
          return OP_FLT_TO_STR;
       case TypeReqNone:
-         return OP_FLT_TO_NONE;
+         return OP_NUM_TO_NONE;
       default:
          break;
       }
@@ -179,7 +179,7 @@ static U32 conversionOp(TypeReq src, TypeReq dst)
       case TypeReqString:
          return OP_UINT_TO_STR;
       case TypeReqNone:
-         return OP_UINT_TO_NONE;
+         return OP_NUM_TO_NONE;
       default:
          break;
       }

+ 2 - 8
Engine/source/console/codeBlock.cpp

@@ -1215,12 +1215,6 @@ void CodeBlock::dumpInstructions(U32 startIp, bool upToReturn)
          break;
       }
 
-      case OP_FLT_TO_NONE:
-      {
-         Con::printf("%i: OP_FLT_TO_NONE", ip - 1);
-         break;
-      }
-
       case OP_UINT_TO_FLT:
       {
          Con::printf("%i: OP_UINT_TO_FLT", ip - 1);
@@ -1233,9 +1227,9 @@ void CodeBlock::dumpInstructions(U32 startIp, bool upToReturn)
          break;
       }
 
-      case OP_UINT_TO_NONE:
+      case OP_NUM_TO_NONE:
       {
-         Con::printf("%i: OP_UINT_TO_NONE", ip - 1);
+         Con::printf("%i: OP_NUM_TO_NONE", ip - 1);
          break;
       }
 

+ 1 - 5
Engine/source/console/compiledEval.cpp

@@ -1547,10 +1547,6 @@ ConsoleValue CodeBlock::exec(U32 ip, const char* functionName, Namespace* thisNa
          _STK--;
          break;
 
-      case OP_FLT_TO_NONE:
-         _STK--;
-         break;
-
       case OP_UINT_TO_FLT:
          numStack[_STK].f = (F64)numStack[_STK].i;
          break;
@@ -1560,7 +1556,7 @@ ConsoleValue CodeBlock::exec(U32 ip, const char* functionName, Namespace* thisNa
          _STK--;
          break;
 
-      case OP_UINT_TO_NONE:
+      case OP_NUM_TO_NONE:
          _STK--;
          break;
 

+ 1 - 2
Engine/source/console/compiler.h

@@ -137,10 +137,9 @@ namespace Compiler
       OP_STR_TO_NONE,  // 60
       OP_FLT_TO_UINT,
       OP_FLT_TO_STR,
-      OP_FLT_TO_NONE,
       OP_UINT_TO_FLT,
       OP_UINT_TO_STR,
-      OP_UINT_TO_NONE,
+      OP_NUM_TO_NONE,
 
       OP_LOADIMMED_UINT,
       OP_LOADIMMED_FLT,

+ 1 - 1
Engine/source/console/console.cpp

@@ -2595,7 +2595,7 @@ ConsoleValue _BaseEngineConsoleCallbackHelper::_exec()
       // Cannot invoke callback until object has been registered
       if (mThis->isProperlyAdded())
       {
-         ConsoleValue returnValue = std::move(Con::_internalExecute( mThis, mArgc, mArgv, false ));
+         ConsoleValue returnValue = Con::_internalExecute( mThis, mArgc, mArgv, false );
          mArgc = mInitialArgc; // reset
          return std::move(returnValue);
       }

+ 3 - 4
Engine/source/console/console.h

@@ -175,14 +175,14 @@ class ConsoleValue
    }
 
 public:
-   ConsoleValue()
+   explicit ConsoleValue()
    {
-      setEmptyString();
+      type = ConsoleValueType::cvSTEntry;
+      s = const_cast<char*>(StringTable->EmptyString());
    }
 
    ConsoleValue(ConsoleValue&& ref) noexcept
    {
-      cleanupData();
       type = ref.type;
 
       switch (ref.type)
@@ -217,7 +217,6 @@ public:
 
    TORQUE_FORCEINLINE void reset()
    {
-      cleanupData();
       setEmptyString();
    }