Fixes for mypy 0.600 (#324)

* Remove the mypy version constraint and set strict_optional to False.

* Add type annotations for `ISA` variables.

mypy 0.600 seems to require explicit annotations here.

* Annotate the ISA variables in the defs.py files too.
This commit is contained in:
Dan Gohman
2018-05-03 12:12:19 -07:00
committed by GitHub
parent 69468915d5
commit 846a71d93b
10 changed files with 15 additions and 9 deletions

View File

@@ -17,7 +17,8 @@ before_install:
- wget https://storage.googleapis.com/wasm-llvm/builds/linux/26619/wasm-toolchain_0.1.26619_amd64.deb
- sudo dpkg -i wasm-toolchain_0.1.26619_amd64.deb
install:
- pip3 install --user --upgrade mypy==0.521 flake8
- pip3 install --user --upgrade mypy flake8
- mypy --version
- travis_wait ./check-rustfmt.sh --install
script: ./test-all.sh
cache:

View File

@@ -9,6 +9,7 @@ This target ISA generates code for ARMv7 and ARMv8 CPUs in 32-bit mode
from __future__ import absolute_import
from . import defs
from . import settings, registers # noqa
from cdsl.isa import TargetISA # noqa
# Re-export the primary target ISA definition.
ISA = defs.ISA.finish()
ISA = defs.ISA.finish() # type: TargetISA

View File

@@ -8,7 +8,7 @@ from cdsl.isa import TargetISA, CPUMode
import base.instructions
from base.legalize import narrow
ISA = TargetISA('arm32', [base.instructions.GROUP])
ISA = TargetISA('arm32', [base.instructions.GROUP]) # type: TargetISA
# CPU modes for 32-bit ARM and Thumb2.
A32 = CPUMode('A32', ISA)

View File

@@ -8,6 +8,7 @@ ARMv8 CPUs running the Aarch64 architecture.
from __future__ import absolute_import
from . import defs
from . import settings, registers # noqa
from cdsl.isa import TargetISA # noqa
# Re-export the primary target ISA definition.
ISA = defs.ISA.finish()
ISA = defs.ISA.finish() # type: TargetISA

View File

@@ -8,7 +8,7 @@ from cdsl.isa import TargetISA, CPUMode
import base.instructions
from base.legalize import narrow
ISA = TargetISA('arm64', [base.instructions.GROUP])
ISA = TargetISA('arm64', [base.instructions.GROUP]) # type: TargetISA
A64 = CPUMode('A64', ISA)
# TODO: Refine these

View File

@@ -27,6 +27,7 @@ RV32G / RV64G
from __future__ import absolute_import
from . import defs
from . import encodings, settings, registers # noqa
from cdsl.isa import TargetISA # noqa
# Re-export the primary target ISA definition.
ISA = defs.ISA.finish()
ISA = defs.ISA.finish() # type: TargetISA

View File

@@ -7,7 +7,7 @@ from __future__ import absolute_import
from cdsl.isa import TargetISA, CPUMode
import base.instructions
ISA = TargetISA('riscv', [base.instructions.GROUP])
ISA = TargetISA('riscv', [base.instructions.GROUP]) # type: TargetISA
# CPU modes for 32-bit and 64-bit operation.
RV32 = CPUMode('RV32', ISA)

View File

@@ -16,6 +16,7 @@ This target ISA generates code for x86 CPUs with two separate CPU modes:
from __future__ import absolute_import
from . import defs
from . import encodings, settings, registers # noqa
from cdsl.isa import TargetISA # noqa
# Re-export the primary target ISA definition.
ISA = defs.ISA.finish()
ISA = defs.ISA.finish() # type: TargetISA

View File

@@ -9,7 +9,7 @@ import base.instructions
from . import instructions as x86
from base.immediates import floatcc
ISA = TargetISA('x86', [base.instructions.GROUP, x86.GROUP])
ISA = TargetISA('x86', [base.instructions.GROUP, x86.GROUP]) # type: TargetISA
# CPU modes for 32-bit and 64-bit operation.
X86_64 = CPUMode('I64', ISA)

View File

@@ -2,3 +2,4 @@
disallow_untyped_defs = True
warn_unused_ignores = True
warn_return_any = True
strict_optional = False