Index of Semantic Rules

Well-formedness of Types

Construct

Judgement

Numeric type

Cnumtypeok

Vector type

Cvectypeok

Heap type

Cheaptypeok

Reference type

Creftypeok

Value type

Cvaltypeok

Packed type

Cpackedtypeok

Storage type

Cstoragetypeok

Field type

Cfieldtypeok

Result type

Cresulttypeok

Instruction type

Cinstrtypeok

Function type

Cfunctypeok

Structure type

Cstructtypeok

Array type

Carraytypeok

Composite type

Ccomptypeok

Sub type

Csubtypeok

Recursive type

Crectypeok

Defined type

Cdeftypeok

Block type

Cblocktype:instrtype

Table type

Ctabletypeok

Memory type

Cmemtypeok

Global type

Cglobaltypeok

External type

Cexterntypeok

Type definitions

Ctypeok

Typing of Static Constructs

Construct

Judgement

Instruction

S;Cinstr:functype

Instruction sequence

S;Cinstr:functype

Expression

Cexpr:resulttype

Function

Cfunc:functype

Local

Clocal:localtype

Table

Ctable:tabletype

Memory

Cmem:memtype

Limits

Climits:k

Global

Cglobal:globaltype

Element segment

Celem:reftype

Element mode

Celemmode:reftype

Data segment

Cdataok

Data mode

Cdatamodeok

Start function

Cstartok

Export

Cexport:externtype

Export description

Cexportdesc:externtype

Import

Cimport:externtype

Import description

Cimportdesc:externtype

Module

module:externtypeexterntype

Typing of Runtime Constructs

Construct

Judgement

Value

Sval:valtype

Result

Sresult:resulttype

Packed value

Spackedval:packedtype

Field value

Sfieldval:storagetype

External value

Sexternval:externtype

Function instance

Sfuncinst:functype

Table instance

Stableinst:tabletype

Memory instance

Smeminst:memtype

Global instance

Sglobalinst:globaltype

Element instance

Seleminst:t

Data instance

Sdatainstok

Structure instance

Sstructinstok

Array instance

Sarrayinstok

Export instance

Sexportinstok

Module instance

Smoduleinst:C

Store

storeok

Configuration

configok

Thread

S;resulttype?thread:resulttype

Frame

Sframe:C

Defaultability

Construct

Judgement

Defaultable value type

Cvaltypedefaultable

Constantness

Construct

Judgement

Constant expression

Cexprconst

Constant instruction

Cinstrconst

Matching

Construct

Judgement

Number type

Cnumtype1numtype2

Vector type

Cvectype1vectype2

Heap type

Cheaptype1heaptype2

Reference type

Creftype1reftype2

Value type

Cvaltype1valtype2

Packed type

Cpackedtype1packedtype2

Storage type

Cstoragetype1storagetype2

Field type

Cfieldtype1fieldtype2

Result type

Cresulttype1resulttype2

Instruction type

Cinstrtype1instrtype2

Function type

Cfunctype1functype2

Structure type

Cstructtype1structtype2

Array type

Carraytype1arraytype2

Composite type

Ccomptype1comptype2

Defined type

Cdeftype1deftype2

Table type

Ctabletype1tabletype2

Memory type

Cmemtype1memtype2

Global type

Cglobaltype1globaltype2

External type

Cexterntype1externtype2

Limits

Climits1limits2

Store Extension

Construct

Judgement

Function instance

funcinst1funcinst2

Table instance

tableinst1tableinst2

Memory instance

meminst1meminst2

Global instance

globalinst1globalinst2

Element instance

eleminst1eleminst2

Data instance

datainst1datainst2

Structure instance

structinst1structinst2

Array instance

arrayinst1arrayinst2

Store

store1store2

Execution

Construct

Judgement

Instruction

S;F;instrS;F;instr

Expression

S;F;exprS;F;expr