]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/Common/Expression.py
BaseTools: change the Division Operator
[mirror_edk2.git] / BaseTools / Source / Python / Common / Expression.py
index 19ea13b7fb2d63a920c274391e2f2947cfa57356..0c7e25b445a68424af248d6ec93ea09d0c275ca4 100644 (file)
@@ -439,6 +439,13 @@ class ValueExpression(BaseExpression):
                 else:\r
                     Val = Val3\r
                 continue\r
+            #\r
+            # PEP 238 -- Changing the Division Operator\r
+            # x/y to return a reasonable approximation of the mathematical result of the division ("true division")\r
+            # x//y to return the floor ("floor division")\r
+            #\r
+            if Op == '/':\r
+                Op = '//'\r
             try:\r
                 Val = self.Eval(Op, Val, EvalFunc())\r
             except WrnExpression as Warn:\r
@@ -912,7 +919,7 @@ class ValueExpressionEx(ValueExpression):
                         if TmpValue.bit_length() == 0:\r
                             PcdValue = '{0x00}'\r
                         else:\r
-                            for I in range((TmpValue.bit_length() + 7) / 8):\r
+                            for I in range((TmpValue.bit_length() + 7) // 8):\r
                                 TmpList.append('0x%02x' % ((TmpValue >> I * 8) & 0xff))\r
                             PcdValue = '{' + ', '.join(TmpList) + '}'\r
                     except:\r