From c603f3a4edb29b4d8dbec173c7762a5e368acda0 Mon Sep 17 00:00:00 2001 From: NikVolf Date: Thu, 7 Sep 2017 12:56:26 +0200 Subject: [PATCH] panic confirmed with a test --- res/cases/v1/const.wasm | Bin 89 -> 99 bytes res/cases/v1/const.wast | 1 + src/elements/module.rs | 25 +++++++++++++------------ 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/res/cases/v1/const.wasm b/res/cases/v1/const.wasm index 70cd30789c0caa138c6150f04746d3a080ac571b..1a46010c778be49dc751be641799542da6ca5887 100644 GIT binary patch delta 44 ncmaz{o*<&)$LPc0^dANooEl)D-s$}NS^E#nYHKK%sHY782rCz@ delta 34 ccmYd}oFF3Q!sx`{^dANooEl)Dexijo04XvNZ~y=R diff --git a/res/cases/v1/const.wast b/res/cases/v1/const.wast index e8f8f1a..bad9e94 100644 --- a/res/cases/v1/const.wast +++ b/res/cases/v1/const.wast @@ -3,6 +3,7 @@ (func (;0;) (type 0) (result i32) i64.const 9223372036854775807 i64.const -9223372036854775808 + i64.const -1152894205662152753 i32.const 1024 i32.const 2048 i32.const 4096 diff --git a/src/elements/module.rs b/src/elements/module.rs index 66937ce..9dcd2c1 100644 --- a/src/elements/module.rs +++ b/src/elements/module.rs @@ -279,18 +279,19 @@ mod integration_tests { assert_eq!(I64Const(9223372036854775807), func.code().elements()[0]); assert_eq!(I64Const(-9223372036854775808), func.code().elements()[1]); - assert_eq!(I32Const(1024), func.code().elements()[2]); - assert_eq!(I32Const(2048), func.code().elements()[3]); - assert_eq!(I32Const(4096), func.code().elements()[4]); - assert_eq!(I32Const(8192), func.code().elements()[5]); - assert_eq!(I32Const(16384), func.code().elements()[6]); - assert_eq!(I32Const(32767), func.code().elements()[7]); - assert_eq!(I32Const(-1024), func.code().elements()[8]); - assert_eq!(I32Const(-2048), func.code().elements()[9]); - assert_eq!(I32Const(-4096), func.code().elements()[10]); - assert_eq!(I32Const(-8192), func.code().elements()[11]); - assert_eq!(I32Const(-16384), func.code().elements()[12]); - assert_eq!(I32Const(-32768), func.code().elements()[13]); + assert_eq!(I64Const(-1152894205662152753), func.code().elements()[2]); + assert_eq!(I32Const(1024), func.code().elements()[3]); + assert_eq!(I32Const(2048), func.code().elements()[4]); + assert_eq!(I32Const(4096), func.code().elements()[5]); + assert_eq!(I32Const(8192), func.code().elements()[6]); + assert_eq!(I32Const(16384), func.code().elements()[7]); + assert_eq!(I32Const(32767), func.code().elements()[8]); + assert_eq!(I32Const(-1024), func.code().elements()[9]); + assert_eq!(I32Const(-2048), func.code().elements()[10]); + assert_eq!(I32Const(-4096), func.code().elements()[11]); + assert_eq!(I32Const(-8192), func.code().elements()[12]); + assert_eq!(I32Const(-16384), func.code().elements()[13]); + assert_eq!(I32Const(-32768), func.code().elements()[14]); } #[test]