compiler/ lib/ scripts/ seed/ sublime/ test/ support/ tests/ assign.qualified.static/ fn.unsafe.callbacks/ ref.qualified.static/ wildcard.import.owner/ abi.sizes.rad 3.5 KiB addfn.rad 52 B addfn.ril 76 B aggregate.return.rad 4.1 KiB arith.assignment.rad 631 B arith.basic.rad 191 B arith.modulo.rad 111 B arith.subword.rad 3.9 KiB arith.subword.ril 4.3 KiB arith.sum.rad 192 B arith.w64.rad 4.1 KiB arith.w64.ril 5.2 KiB array.aggregate.stride.rad 773 B array.aggregate.stride.ril 1.1 KiB array.assign.rad 225 B array.assign.ril 526 B array.bounds.check.rad 321 B array.fn.assign.rad 265 B array.index.assign.rad 422 B array.index.rad 280 B array.index.ril 496 B array.len.const.rad 348 B array.len.const.ril 200 B array.length.rad 285 B array.literal.rad 136 B array.literal.ril 329 B array.math.rad 1.2 KiB array.nested.assign.rad 327 B array.nested.rad 325 B array.nested.ril 922 B array.record.elements.rad 1.7 KiB array.repeat.edge.rad 548 B array.repeat.rad 828 B array.repeat.ril 3.0 KiB array.return.rad 345 B array.slice.empty.rad 123 B array.slice.full.rad 124 B array.slice.full.ril 168 B array.slice.gen.end.rad 155 B array.slice.gen.index.rad 168 B array.slice.gen.open.rad 154 B array.slice.gen.start.end.rad 156 B array.slice.gen.start.rad 155 B array.slice.openend.rad 148 B array.slice.openend.ril 351 B array.slice.openstart.rad 148 B array.slice.openstart.ril 289 B array.slice.rad 816 B as.precedence.rad 226 B asm.basic.text.program.ras 187 B asm.branch.comparisons.ras 648 B asm.call.return.flow.ras 203 B asm.compare.set.logic.ras 611 B asm.csr.system.instructions.ras 221 B asm.data.directives.ras 439 B asm.data.symbol.fixup.ras 227 B asm.directive.boundary.values.ras 809 B asm.fence.ras 76 B asm.global.scoped.symbols.ras 207 B asm.instruction.matrix.alu.ras 566 B asm.instruction.matrix.mem.control.ras 355 B asm.instruction.matrix.system.ras 115 B asm.label.fixups.ras 235 B asm.li.expressions.ras 212 B asm.link.rad 103 B asm.link.ras 85 B asm.load.store.widths.ras 711 B asm.mul.div.rem.ras 769 B asm.rodata.prefix.rad 226 B asm.rodata.prefix.ras 163 B asm.scoped.symbols.la.ras 147 B asm.scoped.symbols.tail.ras 157 B asm.section.switching.ras 173 B asm.space.constant.expressions.ras 358 B asm.string.directive.lists.ras 326 B asm.word.dword.constants.ras 372 B asm.word.shift.ops.ras 870 B assert.basic.rad 402 B assert.basic.ril 624 B assert.fail.rad 138 B assert.false.rad 140 B assert.message.rad 123 B assert.message.ril 141 B assert.true.rad 115 B assign.loop.rad 213 B assign.loop.ril 242 B assign.multi.var.rad 194 B assign.multi.var.ril 73 B assign.mutable.rad 6.3 KiB assign.param.rad 150 B assign.param.ril 96 B assign.qualified.static.rad 464 B assign.rad 156 B assign.self.ref.rad 161 B assign.self.ref.ril 92 B assign.sequential.rad 163 B assign.sequential.ril 52 B assign.shadow.mutable.rad 489 B assign.use.intermediate.rad 191 B assign.use.intermediate.ril 99 B average.rad 189 B average.ril 378 B binding.storage.rad 514 B binding.storage.ril 878 B binop.arith.rad 479 B binop.arith.ril 389 B binop.bitwise.rad 1.2 KiB binop.bitwise.ril 1.2 KiB binop.cmp.rad 441 B binop.logical.rad 216 B binop.logical.ril 373 B binop.shift.rad 197 B binop.shift.ril 149 B binop.unsigned.rad 317 B binop.unsigned.ril 236 B block.finalization.flow.rad 1.9 KiB bool.comparison.array.rad 688 B bool.comparison.nested.gen.rad 1.0 KiB bool.comparison.opt.rad 905 B bool.comparison.record.gen.rad 1.0 KiB bool.comparison.record.rad 1.1 KiB bool.comparison.slice.gen.rad 157 B bool.comparison.slice.rad 4.4 KiB bool.comparison.slice.record.gen.rad 2.0 KiB bool.comparison.slice.union.gen.rad 2.6 KiB bool.comparison.union.ctor.rad 711 B bool.comparison.union.gen.rad 1.2 KiB bool.comparison.union.record.gen.rad 1.5 KiB bool.comparison.union.simple.gen.rad 302 B bool.operators.complex.rad 384 B bool.operators.rad 831 B bool.short.circuit.order.rad 1013 B bool.short.circuit.rad 2.3 KiB bool.simple.rad 209 B bool.values.rad 787 B borrow.fields.calls.rad 1.3 KiB borrow.fields.calls.ril 841 B borrow.fields.pattern.rad 596 B borrow.fields.pattern.ril 279 B builtin.alignof.rad 698 B builtin.alignof.ril 287 B builtin.memory.fence.rad 108 B builtin.size.align.rad 1.2 KiB builtin.sizeof.rad 656 B builtin.sizeof.ril 282 B builtin.sliceof.invalid.cap.rad 271 B builtin.sliceof.mut.rad 674 B builtin.sliceof.rad 542 B byte.load.store.rad 380 B byte.load.store.ril 730 B call.aggregate.arg.snapshot.rad 520 B call.arg.clobber.rad 732 B call.basic.rad 256 B call.checked.selection.rad 1.1 KiB call.clobber.rad 509 B call.table.order.rad 1.8 KiB call.tests.rad 764 B call.tests.ril 603 B cast.basic.rad 855 B cast.basic.ril 594 B cast.narrow.rad 583 B cast.narrow.ril 557 B cast.same.size.rad 1.0 KiB cast.same.size.ril 1.1 KiB casting.numbers.rad 1.5 KiB char.literal.rad 180 B cmp.rel.rad 733 B cmp.rel.ril 467 B cmp.unsigned.rad 733 B cmp.unsigned.ril 467 B coercion.implicit.rad 917 B coercion.implicit.ril 1.1 KiB compare.literal.first.u64.rad 301 B compound.assign.field.rad 318 B compound.assign.index.once.rad 431 B compound.assign.rad 1.2 KiB compound.assign.ril 2.0 KiB cond.assign.merge.basic.rad 221 B cond.assign.merge.basic.ril 172 B cond.assign.merge.rad 214 B cond.assign.merge.ril 169 B cond.assign.rad 766 B cond.elseif.rad 204 B cond.elseif.ril 181 B cond.expr.aggregate.rad 1.2 KiB cond.expr.literal-first.rad 326 B cond.expr.rad 1.9 KiB cond.expr.ril 3.5 KiB cond.for.else.break.rad 349 B cond.for.indexed.rad 257 B cond.for.rad 184 B cond.for.range.indexed.rad 549 B cond.for.range.rad 190 B cond.for.unsigned.range.rad 671 B cond.forever.break.continue.rad 201 B cond.forever.break.rad 255 B cond.fused.rad 941 B cond.if.case.rad 2.2 KiB cond.if.else.min.rad 158 B cond.if.else.rad 244 B cond.if.elseif.rad 443 B cond.if.noelse.rad 139 B cond.if.rad 880 B cond.ifelse.rad 104 B cond.ifelse.ril 117 B cond.iflet.case.rad 170 B cond.iflet.case.ril 114 B cond.iflet.guard.rad 182 B cond.iflet.guard.ril 165 B cond.iflet.mut.rad 195 B cond.iflet.mut.ril 217 B cond.iflet.noelse.rad 156 B cond.iflet.noelse.ril 225 B cond.iflet.optional.rad 184 B cond.iflet.optional.ril 118 B cond.iflet.optional.value.rad 194 B cond.iflet.optional.value.ril 206 B cond.letelse.case.rad 146 B cond.letelse.case.ril 149 B cond.letelse.guard.rad 160 B cond.letelse.guard.ril 200 B cond.letelse.mut.rad 185 B cond.letelse.mut.ril 252 B cond.letelse.optional.rad 160 B cond.letelse.optional.ril 153 B cond.match.fallthrough.rad 388 B cond.match.guard.rad 1.4 KiB cond.match.guard.regalloc.rad 1.4 KiB cond.nested.rad 138 B cond.nested.ril 185 B cond.simple.rad 86 B cond.simple.ril 118 B cond.while.else.break.rad 305 B cond.while.rad 138 B const-cast-wrap.rad 450 B const-expr-array-size.rad 379 B const-expr-cast.rad 1.1 KiB const-expr-literal.rad 673 B const-expr-refs.rad 752 B const.array.copy.mutate.rad 397 B const.array.ident.rad 247 B const.array.ident.ril 146 B const.array.rad 217 B const.array.record.ident.rad 396 B const.array.record.ident.ril 353 B const.array.repeat.record.rad 225 B const.array.repeat.record.ril 399 B const.array.repeat.string.slice.rad 303 B const.array.repeat.string.slice.ril 1.1 KiB const.array.ril 392 B const.array.strings.slice.rad 274 B const.array.strings.slice.ril 579 B const.backing.names.rad 1.2 KiB const.basic.rad 349 B const.char.rad 180 B const.fn.array.rad 670 B const.i32.shift.right.rad 244 B const.local.duplicate.rad 474 B const.local.duplicate.ril 787 B const.negative.rad 331 B const.negative.ril 338 B const.record.array.rad 1.2 KiB const.record.array.simple.rad 559 B const.record.ctor.rad 194 B const.record.ctor.ril 415 B const.record.fn.rad 362 B const.record.mutcopy.rad 466 B const.record.mutcopy.ril 445 B const.record.nested.rad 408 B const.record.nested.ril 474 B const.record.packed.rad 275 B const.record.packed.ril 284 B const.record.padded.rad 275 B const.record.padded.ril 318 B const.record.rad 206 B const.record.ril 221 B const.record.union.rad 608 B const.record.union.ril 673 B const.scalar.rad 105 B const.scalar.ril 82 B const.shift.negative.count.rad 305 B const.slice.of.slices.rad 238 B const.slice.of.slices.ril 956 B const.slice.param.rad 336 B const.string.rad 114 B const.string.ril 309 B const.string.scoped.names.rad 263 B const.string.scoped.names.ril 904 B const.u32.shift.mask.rad 249 B const.u64.compare.rad 188 B const.u64.divide.rad 174 B const.union.payload.ctor.rad 373 B const.union.payload.ctor.ril 507 B const.union.payload.fn.array.rad 1.1 KiB const.union.payload.record.array.rad 1.5 KiB const.union.record.literal.rad 383 B const.union.record.literal.ril 506 B container.length.paths.rad 1.2 KiB data.array.rad 803 B data.bool.rad 237 B data.i16.rad 288 B data.i32.rad 308 B data.i8.rad 275 B data.optional.nil.rad 866 B data.optional.nil.ril 2.0 KiB data.optional.value.rad 2.3 KiB data.optional.value.ril 5.8 KiB data.record.rad 597 B data.simple.rad 454 B data.u16.rad 244 B data.u32.rad 264 B data.u8.rad 232 B data.union.rad 931 B debug.tag.rad 563 B div.u8.immediate.wrap.rad 213 B ecall.i64.rad 529 B edge.cases.2.rad 361 B edge.cases.3.rad 606 B edge.cases.4.rad 1.3 KiB edge.cases.5.rad 1.1 KiB edge.cases.6.rad 2.7 KiB edge.cases.7.addr.bug.rad 246 B edge.cases.8.bug.rad 553 B edge.cases.rad 247 B element.pointer.widths.rad 2.0 KiB error.basic.rad 180 B error.catch.rad 1.6 KiB error.catch.return.rad 409 B error.catch.return.ril 634 B error.division.zero.rad 164 B error.modulo.zero.rad 162 B error.multi.basic.rad 711 B error.multi.catch.capacity.rad 3.0 KiB error.multi.catch.rad 819 B error.multi.catch.typed.binding.rad 830 B error.multi.catch.typed.catchall.rad 1.0 KiB error.multi.catch.typed.rad 1.1 KiB error.multi.propagate.multi.rad 1000 B error.multi.propagate.rad 864 B error.multi.try.optional.rad 534 B error.slice.bounds.rad 233 B error.throw.coercion.rad 318 B error.try.bang.success.rad 376 B error.try.catch.binding.rad 2.1 KiB error.try.optional.rad 1.9 KiB error.try.rad 4.1 KiB expression.result.coercion.rad 1.6 KiB extern.inferred.rad 70 B externfn.rad 32 B externfn.ril 37 B fibonacci.rad 122 B fibonacci.ril 247 B field.aggregate.rad 837 B field.aggregate.ril 842 B fn.block.scope.rad 508 B fn.callback.nested.rad 1.6 KiB fn.default.rad 146 B fn.local.rad 155 B fn.parameter.table.rad 1.4 KiB fn.ptr.assign.rad 277 B fn.ptr.assign.ril 143 B fn.ptr.call.rad 258 B fn.ptr.call.ril 183 B fn.ptr.param.rad 356 B fn.ptr.param.ril 282 B fn.recursion.2.rad 239 B fn.unsafe.callbacks.rad 737 B fn.void.rad 165 B for.else.continue.rad 1.1 KiB frame.large.rad 614 B if-let-mut.rad 1.2 KiB iflet.shadow.else.rad 408 B iflet.shadow.leak.rad 317 B index.eval.order.rad 368 B index.u8.rad 616 B int.default.i64.rad 1.1 KiB integer.bitwise.basic.rad 708 B integer.overflow.rad 1.8 KiB intrinsic.ebreak.rad 90 B intrinsic.ebreak.ril 76 B intrinsic.ecall.rad 168 B intrinsic.ecall.ril 131 B large.blit.store.rad 2.2 KiB let.copy.semantics.rad 883 B let.copy.semantics.ril 939 B let.guard.rad 1.9 KiB let.placeholder.rad 291 B let.placeholder.ril 220 B linear.let-else.rad 402 B linear.ownership.rad 395 B linear.ownership.ril 353 B linear.reference.rad 663 B linear.reference.ril 623 B linear.scratch.slots.rad 3.1 KiB linear.unsafe.rad 531 B linear.unsafe.ril 286 B literal.char.rad 209 B literal.char.ril 127 B literal.slice.backing.rad 893 B literal.slice.bytes.rad 124 B literal.slice.bytes.ril 263 B literal.slice.dedup.rad 199 B literal.slice.dedup.ril 434 B literal.slice.empty.rad 100 B literal.slice.empty.ril 157 B literal.slice.multi.rad 170 B literal.slice.multi.ril 496 B literal.slice.rad 123 B literal.slice.record.rad 217 B literal.slice.record.ril 694 B literal.slice.ril 272 B literal.string.dedup.rad 179 B literal.string.dedup.ril 422 B literal.string.empty.rad 93 B literal.string.empty.ril 248 B literal.string.fns.rad 180 B literal.string.fns.ril 470 B literal.string.multi.rad 153 B literal.string.multi.ril 480 B literal.string.rad 108 B literal.string.ril 247 B literal.w64.rad 1.7 KiB load.u32.high.rad 1.8 KiB loc.addr.offset.bug.rad 455 B loc.addr.opt.to.opt.rad 472 B loc.addr.optional.assign.rad 447 B loc.addr.record.assign.rad 499 B local.multi.rad 85 B local.multi.ril 67 B local.mut.rad 79 B local.mut.ril 45 B local.simple.rad 60 B local.simple.ril 45 B loop.break.rad 156 B loop.break.ril 228 B loop.complex.flow.rad 1.0 KiB loop.context.rad 678 B loop.continue.rad 219 B loop.continue.ril 327 B loop.for.array.rad 223 B loop.for.array.ril 315 B loop.for.break.bound.rad 161 B loop.for.break.bound.ril 264 B loop.for.continue.rad 403 B loop.for.continue.ril 741 B loop.for.indexed.rad 149 B loop.for.indexed.ril 285 B loop.for.placeholder.rad 321 B loop.for.placeholder.ril 457 B loop.for.rad 120 B loop.for.ril 220 B loop.for.slice.rad 216 B loop.for.slice.ril 362 B loop.for.unsigned.range.rad 317 B loop.for.unsigned.range.ril 481 B loop.infinite.rad 41 B loop.infinite.ril 78 B loop.mutable.rad 375 B loop.mutable.ril 617 B loop.nested.break.rad 392 B loop.nested.break.ril 461 B loop.nested.continue.rad 418 B loop.nested.continue.ril 581 B loop.return.rad 141 B loop.return.ril 179 B loop.sealblock.rad 942 B loop.while.false.noparams.rad 175 B loop.while.false.noparams.ril 171 B loop.while.nested.shortcircuit.rad 872 B loop.while.nested.shortcircuit.ril 589 B loop.while.rad 164 B loop.while.ril 241 B loop.whilelet.case.rad 259 B loop.whilelet.case.ril 204 B loop.whilelet.guard.rad 265 B loop.whilelet.guard.ril 256 B loop.whilelet.optional.rad 212 B loop.whilelet.optional.ril 217 B loop.whilelet.union.rad 382 B loop.whilelet.union.ril 382 B lower.const.record.ident.rad 291 B lower.const.record.ident.ril 387 B lower.private.union.const.rad 259 B lower.private.union.const.ril 317 B lower.record.scalar.record.const.rad 244 B lower.record.scalar.record.const.ril 321 B lower.variable.scopes.rad 963 B lowering.scratch.context.rad 5.3 KiB lowering.scratch.context.ril 5.6 KiB match.array.rad 3.5 KiB match.borrow.scope.rad 708 B match.catchall.metadata.rad 1.1 KiB match.char.rad 1.6 KiB match.guard.order.rad 1.1 KiB match.more.rad 647 B match.more.ril 683 B match.multi.seal.rad 1008 B match.multi.seal.ril 924 B match.multi.survive.rad 1.7 KiB match.mutref.push.rad 1.1 KiB match.mutref.union.rad 693 B match.nested.call.rad 1.7 KiB match.nested.deep.rad 2.2 KiB match.nested.deref.rad 3.8 KiB match.nested.guard.rad 1.6 KiB match.nested.iflet.guard.rad 1.6 KiB match.nested.iflet.rad 1.4 KiB match.nested.iflet.ril 2.3 KiB match.nested.letelse.rad 840 B match.nested.letelse.union.rad 1.4 KiB match.nested.literal.rad 3.1 KiB match.nested.multi.rad 2.4 KiB match.nested.pattern.rad 5.3 KiB match.nested.pattern.ril 8.3 KiB match.nested.record.rad 2.1 KiB match.nested.record.ril 3.5 KiB match.nested.union.rad 2.3 KiB match.nested.union.ril 4.5 KiB match.nested.whilelet.rad 2.4 KiB match.optional.aggregate.rad 222 B match.optional.aggregate.ril 578 B match.optional.rad 183 B match.optional.ref.rad 212 B match.optional.ref.ril 232 B match.optional.ril 164 B match.optional.wildcard.rad 282 B match.payload.modes.rad 1.2 KiB match.pointer.bindings.rad 678 B match.pointer.bindings.ril 1.3 KiB match.record.pattern.rad 331 B match.record.pattern.ril 287 B match.simple.rad 367 B match.simple.ril 347 B match.string.rad 1.8 KiB match.switch.capacity.rad 5.1 KiB match.switch.rad 217 B match.switch.ril 187 B match.value.copy.rad 2.1 KiB match.void.then.or.rad 1.6 KiB memzero.result.bug.rad 835 B memzero.union.bug.rad 618 B method.basic.rad 590 B method.chain.rad 574 B method.multiple.rad 945 B method.ptr.rad 717 B method.pub.rad 247 B method.return.rad 605 B method.throws.rad 849 B method.union.rad 430 B method.with.trait.rad 1.2 KiB mixedtypes.rad 79 B mixedtypes.ril 82 B multi.throw.basic.rad 284 B multi.throw.basic.ril 526 B multi.throw.catch.typed.rad 456 B multi.throw.catch.typed.ril 1015 B multi.throw.propagate.rad 347 B multi.throw.propagate.ril 873 B multiplefns.rad 110 B multiplefns.ril 146 B mutref.call.result.rad 350 B mutref.loop.bug.rad 1.9 KiB mutref.loop.rad 324 B mutref.loop.ril 368 B mutref.scalar.rad 232 B mutref.scalar.ril 324 B nil.cmp.rad 622 B nil.cmp.ril 423 B noparams.rad 38 B noparams.ril 43 B opt.array.hint.rad 951 B opt.assignment.bug.rad 1.3 KiB opt.bug.test.rad 1.4 KiB opt.if.let.complex.rad 6.2 KiB opt.if.let.guard.rad 809 B opt.if.let.rad 956 B opt.nil.check.rad 1.6 KiB opt.ptr.return.nil.rad 85 B opt.ptr.return.nil.ril 51 B opt.record.eq.rad 866 B opt.record.eq.rev.rad 313 B opt.record.eq.rev.ril 635 B opt.record.eq.ril 3.4 KiB opt.record.rad 679 B opt.return.array.rad 289 B opt.return.nested.rad 803 B opt.return.nil.rad 82 B opt.return.nil.ril 114 B opt.return.record.rad 350 B opt.return.value.rad 91 B opt.return.value.ril 138 B opt.slice.npo.rad 3.0 KiB opt.slice.npo.ril 6.9 KiB opt.type.rad 227 B opt.while.let.complex.rad 412 B optional.aggregate.eq.rad 292 B optional.aggregate.eq.ril 695 B optional.eq.rad 131 B optional.eq.ril 253 B optional.ptr.eq.rad 313 B optional.ptr.eq.ril 309 B optional.record.value.match.rad 606 B optional.union.eq.rad 1.5 KiB panic.basic.rad 70 B panic.basic.ril 46 B panic.rad 111 B parameter.receiver.names.rad 1.4 KiB parser.call.record.argument.rad 209 B parser.condition.array.record.rad 232 B parser.condition.subscript.record.rad 278 B pattern.guard.flow.rad 2.0 KiB placeholder.basic.rad 148 B placeholder.comprehensive.rad 581 B pointer.arithmetic.unsafe.rad 417 B pointer.borrow.unsafe.rad 1.7 KiB pointer.cast.unsafe.rad 439 B pointer.copy.edge.case.rad 1.4 KiB pointer.move.record.rad 551 B pointer.slice.index.rad 304 B pointer.slice.store.rad 1009 B pointer.stack.borrow.rad 907 B pointer.stack.unsafe.rad 483 B pointerfn.rad 50 B pointerfn.ril 54 B prog.ackermann.rad 5.0 KiB prog.bignum.rad 9.7 KiB prog.binsearch.rad 2.5 KiB prog.bubblesort.rad 2.0 KiB prog.cordic.rad 7.0 KiB prog.crc32.rad 2.8 KiB prog.dijkstra.rad 8.1 KiB prog.eval.rad 6.3 KiB prog.hanoi.rad 3.8 KiB prog.huffman.rad 9.9 KiB prog.hybridsort.rad 3.1 KiB prog.linkedlist.rad 6.0 KiB prog.lzw.rad 7.2 KiB prog.matmul.rad 3.0 KiB prog.mersenne.rad 5.5 KiB prog.nqueens.rad 3.5 KiB prog.rbtree.rad 8.8 KiB prog.regex.rad 10.8 KiB prog.sha256.rad 7.2 KiB prog.sieve.rad 2.8 KiB prog.symtab.rad 10.3 KiB prog.tokenizer.rad 14.5 KiB prog.vm.rad 18.3 KiB ptr.addressof.field.rad 138 B ptr.addressof.field.ril 78 B ptr.addressof.local.rad 503 B ptr.addressof.local.ril 280 B ptr.addressof.rad 133 B ptr.addressof.ril 213 B ptr.assign.rad 155 B ptr.assign.ril 130 B ptr.deref.rad 685 B ptr.deref.record.rad 288 B ptr.deref.record.ril 190 B ptr.deref.ril 1.1 KiB ptr.eq.rad 1.1 KiB ptr.mutate.rad 256 B ptr.opaque.rad 1.6 KiB ptr.subscript.assign.rad 133 B ptr.subscript.assign.ril 288 B range.arithmetic.rad 775 B record.access.rad 306 B record.alignment.rad 200 B record.array.elements.rad 1.7 KiB record.assign.blit.rad 121 B record.assign.blit.ril 158 B record.copy.rad 2.1 KiB record.ctor.tuple.rad 75 B record.ctor.tuple.ril 187 B record.empty.eq.rad 278 B record.empty.eq.ril 226 B record.eq.rad 229 B record.eq.ril 214 B record.field.assign.rad 217 B record.field.assign.ril 308 B record.literal.labeled.rad 109 B record.literal.labeled.ril 127 B record.mixed.layout.rad 122 B record.mixed.layout.ril 149 B record.nested.calls.2.rad 622 B record.nested.calls.3.rad 755 B record.nested.eq.rad 258 B record.nested.eq.ril 522 B record.nested.lit.rad 182 B record.nested.lit.ril 188 B record.param.lit.rad 380 B record.ptr.access.rad 262 B record.ptr.access.ril 198 B record.ptr.mutate.rad 249 B record.shorthand.rad 1.5 KiB record.unlabeled.deref.rad 1.4 KiB record.unlabeled.rad 419 B ref.if.bug.rad 527 B ref.immut.loop.bug.rad 674 B ref.local.bindings.rad 1.5 KiB ref.local.bindings.ril 1.2 KiB ref.local.fields.rad 1.8 KiB ref.local.never.rad 269 B ref.local.never.ril 121 B ref.local.scopes.rad 1.1 KiB ref.local.scopes.ril 896 B ref.local.slice.release.rad 261 B ref.local.slice.release.ril 753 B ref.mut.ptr.rad 291 B ref.qualified.static.rad 307 B reference.array.repeat.rad 135 B reference.array.repeat.ril 260 B regalloc.block.entry.rad 885 B regalloc.callee.save.rad 1.5 KiB regalloc.spill.reuse.rad 488 B regions.body.scope.rad 276 B regions.body.scope.ril 455 B regions.borrow.calls.rad 769 B regions.borrow.calls.ril 1004 B regions.borrow.control.rad 633 B regions.borrow.control.ril 961 B regions.borrow.erasure.rad 213 B regions.borrow.erasure.ril 265 B regions.borrow.headers.rad 213 B regions.borrow.headers.ril 425 B regions.borrow.local.rad 243 B regions.borrow.local.ril 311 B regions.borrow.siblings.rad 153 B regions.borrow.siblings.ril 79 B regions.borrow.valid.rad 716 B regions.borrow.valid.ril 841 B regions.call.scratch.rad 996 B regions.calls.callback.rad 265 B regions.calls.callback.ril 250 B regions.calls.inferred.rad 711 B regions.calls.inferred.ril 954 B regions.calls.nil.rad 982 B regions.calls.nil.ril 1.3 KiB regions.calls.ownership.rad 571 B regions.calls.ownership.ril 826 B regions.calls.parents.rad 246 B regions.calls.parents.ril 190 B regions.calls.raw.rad 352 B regions.calls.raw.ril 457 B regions.calls.recursive.rad 404 B regions.calls.recursive.ril 498 B regions.cell.graph.rad 1.2 KiB regions.cell.graph.ril 2.2 KiB regions.cell.pointer.rad 3.1 KiB regions.cell.pointer.ril 7.9 KiB regions.cell.recursive.rad 783 B regions.cell.recursive.ril 1.7 KiB regions.compiler.bitset.rad 7.1 KiB regions.compiler.bitset.ril 16.6 KiB regions.compiler.regmap.rad 1.3 KiB regions.compiler.regmap.ril 3.8 KiB regions.compiler.symbol.rad 1.1 KiB regions.compiler.symbol.ril 4.8 KiB regions.compiler.writer.rad 1.4 KiB regions.compiler.writer.ril 3.5 KiB regions.constant.optional.rad 604 B regions.constant.optional.ril 1.3 KiB regions.copy.binding.rad 1.7 KiB regions.copy.binding.ril 2.1 KiB regions.for.metadata.rad 1.2 KiB regions.header.order.rad 1.3 KiB regions.loan.scratch.rad 3.5 KiB regions.loans.control.rad 1.8 KiB regions.loans.control.ril 3.0 KiB regions.methods.rad 1.2 KiB regions.nominal.cache.rad 2.9 KiB regions.nominal.rad 1.5 KiB regions.nominal.ril 2.3 KiB regions.owner.freeze.rad 328 B regions.owner.freeze.ril 337 B regions.owner.lifetime.rad 1.2 KiB regions.owner.lifetime.ril 693 B regions.ownership.move.rad 144 B regions.ownership.move.ril 62 B regions.parameters.rad 228 B regions.parameters.ril 421 B regions.session.allocate.rad 2.4 KiB regions.session.allocate.ril 14.4 KiB regions.session.allocator.rad 1.2 KiB regions.session.context.rad 2.0 KiB regions.session.context.ril 2.8 KiB regions.session.scope.rad 728 B regions.session.scope.ril 1.6 KiB regions.shared.owner.rad 1.1 KiB regions.shared.owner.ril 1.6 KiB regions.slice.metadata.rad 776 B regions.storage.rad 2.3 KiB regions.storage.ril 4.2 KiB reserve.loop.rad 421 B reserve.loop.ril 473 B result.void.success.rad 711 B return.lit.rad 45 B return.lit.ril 50 B return.never.catch.rad 757 B return.never.flow.rad 619 B return.never.flow.ril 570 B return.never.rad 337 B return.never.ras 139 B return.param.rad 48 B return.param.ril 54 B rv64.u32.compare.rad 2.1 KiB set.keyword.rad 448 B simplefn.rad 45 B simplefn.ril 51 B slice.alloc.loop.rad 849 B slice.append.growth.rad 1.9 KiB slice.append.rad 4.3 KiB slice.append.ril 18.7 KiB slice.assign.mismatch.rad 220 B slice.assign.rad 1.4 KiB slice.basic.rad 763 B slice.basic.ril 818 B slice.cap.rad 999 B slice.construct.unsafe.rad 432 B slice.delete.rad 1012 B slice.delete.ril 4.8 KiB slice.empty.suffix.rad 593 B slice.eq.rad 126 B slice.eq.ril 209 B slice.header.unsafe.rad 593 B slice.index.rad 104 B slice.index.ril 278 B slice.mutable.rad 297 B slice.mutable.ril 1.5 KiB slice.of.rad 560 B slice.ptr.checked.bounds.rad 227 B slice.ptr.unsafe.rad 627 B slice.range.bounds.check.rad 299 B slice.range.dynamic.rad 877 B slice.range.order.check.rad 298 B slice.range.rad 676 B slice.range.ril 1.8 KiB slice.runtime.i32.rad 279 B slice.runtime.i32.ril 725 B slice.runtime.literal.rad 271 B slice.runtime.literal.ril 455 B slice.subslice.rad 1.5 KiB spill.blockarg.clobber.rad 3.6 KiB spill.loop.rad 1.6 KiB ssa.argument.growth.rad 2.2 KiB ssa.block.locals.rad 1.4 KiB ssa.block.storage.rad 2.2 KiB ssa.cache.values.rad 1.6 KiB ssa.instruction.storage.rad 1.9 KiB ssa.lookup.paths.rad 1.1 KiB ssa.predecessor.storage.rad 2.2 KiB stack.local.corrupt.rad 335 B start.default.rad 62 B start.default.start.ras 29 B start.exit.rad 54 B start.exit.start.ras 53 B static.array.mutate.rad 427 B static.assign.rad 131 B static.assign.ril 244 B static.basic.rad 347 B static.fn.array.rad 628 B static.local.decl.rad 201 B static.local.decl.ril 420 B static.local.names.rad 516 B static.local.names.ril 1.0 KiB static.optional.nil.rad 1.0 KiB static.record.array.rad 532 B static.scalar.rad 109 B static.scalar.ril 135 B static.slice.index.assign.rad 450 B static.slice.offset.rad 723 B static.zero.bss.rad 1.1 KiB string.basic.rad 164 B string.escape.rad 364 B string.index.rad 131 B switch.blockargs.clobber.rad 1.4 KiB symbol.name.registration.rad 1.1 KiB trait.aggregate.ret.rad 1.7 KiB trait.array.optional.rad 1.8 KiB trait.basic.rad 632 B trait.control.flow.rad 1.2 KiB trait.dispatch.rad 333 B trait.dispatch.ril 469 B trait.fn.param.rad 1.8 KiB trait.multiple.methods.rad 1.3 KiB trait.multiple.traits.rad 1.3 KiB trait.multiple.types.rad 1.4 KiB trait.object.rad 408 B trait.object.ril 496 B trait.supertrait.forward.rad 1.3 KiB trait.supertrait.rad 2.7 KiB trait.supertrait.ril 3.9 KiB trait.throws.rad 1.1 KiB trait.writer.rad 2.8 KiB trivial.phi.rad 1.1 KiB trivial.phi.ril 512 B try.basic.rad 397 B try.basic.ril 879 B try.catch.rad 345 B try.catch.ril 837 B try.dispatch.results.rad 1.8 KiB try.optional.rad 369 B try.optional.ril 760 B try.panic.rad 357 B try.panic.ril 639 B type.unify.rad 4.6 KiB undefined.aggregate.rad 165 B undefined.aggregate.ril 84 B undefined.primitive.rad 122 B undefined.primitive.ril 48 B undefined.rad 459 B undefined.record.field.rad 1.6 KiB undefined.record.field.ril 751 B undefined.unsafe.rad 824 B union-tag.rad 967 B union.bitfield.rad 1.2 KiB union.ctor.rad 564 B union.ctor.ril 505 B union.discriminant.cast.rad 395 B union.edge.case.2.rad 700 B union.edge.case.3.rad 674 B union.eq.rad 807 B union.eq.ril 1.4 KiB union.eq.void.ctor.rad 384 B union.eq.void.ctor.ril 131 B union.eq.void.rad 184 B union.eq.void.ril 75 B union.equality.capacity.rad 12.6 KiB union.match.bind.rad 265 B union.match.bind.ril 238 B union.match.ref.rad 1.1 KiB union.match.ref.ril 1.2 KiB union.match.tag.rad 870 B union.match.tag.ril 820 B union.mixed.assign.rad 1012 B union.payload.mutref.rad 1.5 KiB union.payload.rad 601 B union.payload.record.eq.rad 304 B union.payload.record.eq.ril 984 B union.record.forward.rad 1.3 KiB union.record.literal.rad 450 B union.record.literal.ril 391 B union.tag.values.rad 1.4 KiB union.variant.access.rad 743 B union.variant.access.ril 686 B union.void.match.rad 424 B union.void.rad 845 B unop.rad 699 B unop.ril 506 B unsafe.block.bounds.rad 268 B unsafe.block.rad 784 B unsafe.static.rad 523 B unsigned.compare.rad 1.9 KiB var.align.rad 1.0 KiB var.infer.rad 574 B var.shadow.rad 244 B var.shadow.ril 145 B variable.slots.scopes.rad 2.0 KiB void.throw.rad 276 B void.throw.ril 707 B voidfn.rad 18 B voidfn.ril 43 B wildcard.import.owner.rad 199 B command 5.2 KiB driver 3.3 KiB package-golden 1.6 KiB run 3.1 KiB runner.rad 10.5 KiB vim/ .gitignore 336 B .gitsigners 112 B CONTRIBUTING 2.1 KiB LICENSE 1.1 KiB Makefile 5.4 KiB README 2.5 KiB STYLE 2.5 KiB std.lib 1.5 KiB std.lib.test 662 B
test/tests/union.equality.capacity.rad 12.6 KiB raw
1
//! returns: 0
2
//! Union equality handles every supported tag with mixed payload storage.
3
4
/// Union with the maximum supported variant count.
5
union Many: Copy {
6
    /// Variant 0 without a payload.
7
    V0,
8
    /// Variant 1 with a numeric payload.
9
    V1(u32),
10
    /// Variant 2 without a payload.
11
    V2,
12
    /// Variant 3 with a numeric payload.
13
    V3(u32),
14
    /// Variant 4 without a payload.
15
    V4,
16
    /// Variant 5 with a numeric payload.
17
    V5(u32),
18
    /// Variant 6 without a payload.
19
    V6,
20
    /// Variant 7 with a numeric payload.
21
    V7(u32),
22
    /// Variant 8 without a payload.
23
    V8,
24
    /// Variant 9 with a numeric payload.
25
    V9(u32),
26
    /// Variant 10 without a payload.
27
    V10,
28
    /// Variant 11 with a numeric payload.
29
    V11(u32),
30
    /// Variant 12 without a payload.
31
    V12,
32
    /// Variant 13 with a numeric payload.
33
    V13(u32),
34
    /// Variant 14 without a payload.
35
    V14,
36
    /// Variant 15 with a numeric payload.
37
    V15(u32),
38
    /// Variant 16 without a payload.
39
    V16,
40
    /// Variant 17 with a numeric payload.
41
    V17(u32),
42
    /// Variant 18 without a payload.
43
    V18,
44
    /// Variant 19 with a numeric payload.
45
    V19(u32),
46
    /// Variant 20 without a payload.
47
    V20,
48
    /// Variant 21 with a numeric payload.
49
    V21(u32),
50
    /// Variant 22 without a payload.
51
    V22,
52
    /// Variant 23 with a numeric payload.
53
    V23(u32),
54
    /// Variant 24 without a payload.
55
    V24,
56
    /// Variant 25 with a numeric payload.
57
    V25(u32),
58
    /// Variant 26 without a payload.
59
    V26,
60
    /// Variant 27 with a numeric payload.
61
    V27(u32),
62
    /// Variant 28 without a payload.
63
    V28,
64
    /// Variant 29 with a numeric payload.
65
    V29(u32),
66
    /// Variant 30 without a payload.
67
    V30,
68
    /// Variant 31 with a numeric payload.
69
    V31(u32),
70
    /// Variant 32 without a payload.
71
    V32,
72
    /// Variant 33 with a numeric payload.
73
    V33(u32),
74
    /// Variant 34 without a payload.
75
    V34,
76
    /// Variant 35 with a numeric payload.
77
    V35(u32),
78
    /// Variant 36 without a payload.
79
    V36,
80
    /// Variant 37 with a numeric payload.
81
    V37(u32),
82
    /// Variant 38 without a payload.
83
    V38,
84
    /// Variant 39 with a numeric payload.
85
    V39(u32),
86
    /// Variant 40 without a payload.
87
    V40,
88
    /// Variant 41 with a numeric payload.
89
    V41(u32),
90
    /// Variant 42 without a payload.
91
    V42,
92
    /// Variant 43 with a numeric payload.
93
    V43(u32),
94
    /// Variant 44 without a payload.
95
    V44,
96
    /// Variant 45 with a numeric payload.
97
    V45(u32),
98
    /// Variant 46 without a payload.
99
    V46,
100
    /// Variant 47 with a numeric payload.
101
    V47(u32),
102
    /// Variant 48 without a payload.
103
    V48,
104
    /// Variant 49 with a numeric payload.
105
    V49(u32),
106
    /// Variant 50 without a payload.
107
    V50,
108
    /// Variant 51 with a numeric payload.
109
    V51(u32),
110
    /// Variant 52 without a payload.
111
    V52,
112
    /// Variant 53 with a numeric payload.
113
    V53(u32),
114
    /// Variant 54 without a payload.
115
    V54,
116
    /// Variant 55 with a numeric payload.
117
    V55(u32),
118
    /// Variant 56 without a payload.
119
    V56,
120
    /// Variant 57 with a numeric payload.
121
    V57(u32),
122
    /// Variant 58 without a payload.
123
    V58,
124
    /// Variant 59 with a numeric payload.
125
    V59(u32),
126
    /// Variant 60 without a payload.
127
    V60,
128
    /// Variant 61 with a numeric payload.
129
    V61(u32),
130
    /// Variant 62 without a payload.
131
    V62,
132
    /// Variant 63 with a numeric payload.
133
    V63(u32),
134
    /// Variant 64 without a payload.
135
    V64,
136
    /// Variant 65 with a numeric payload.
137
    V65(u32),
138
    /// Variant 66 without a payload.
139
    V66,
140
    /// Variant 67 with a numeric payload.
141
    V67(u32),
142
    /// Variant 68 without a payload.
143
    V68,
144
    /// Variant 69 with a numeric payload.
145
    V69(u32),
146
    /// Variant 70 without a payload.
147
    V70,
148
    /// Variant 71 with a numeric payload.
149
    V71(u32),
150
    /// Variant 72 without a payload.
151
    V72,
152
    /// Variant 73 with a numeric payload.
153
    V73(u32),
154
    /// Variant 74 without a payload.
155
    V74,
156
    /// Variant 75 with a numeric payload.
157
    V75(u32),
158
    /// Variant 76 without a payload.
159
    V76,
160
    /// Variant 77 with a numeric payload.
161
    V77(u32),
162
    /// Variant 78 without a payload.
163
    V78,
164
    /// Variant 79 with a numeric payload.
165
    V79(u32),
166
    /// Variant 80 without a payload.
167
    V80,
168
    /// Variant 81 with a numeric payload.
169
    V81(u32),
170
    /// Variant 82 without a payload.
171
    V82,
172
    /// Variant 83 with a numeric payload.
173
    V83(u32),
174
    /// Variant 84 without a payload.
175
    V84,
176
    /// Variant 85 with a numeric payload.
177
    V85(u32),
178
    /// Variant 86 without a payload.
179
    V86,
180
    /// Variant 87 with a numeric payload.
181
    V87(u32),
182
    /// Variant 88 without a payload.
183
    V88,
184
    /// Variant 89 with a numeric payload.
185
    V89(u32),
186
    /// Variant 90 without a payload.
187
    V90,
188
    /// Variant 91 with a numeric payload.
189
    V91(u32),
190
    /// Variant 92 without a payload.
191
    V92,
192
    /// Variant 93 with a numeric payload.
193
    V93(u32),
194
    /// Variant 94 without a payload.
195
    V94,
196
    /// Variant 95 with a numeric payload.
197
    V95(u32),
198
    /// Variant 96 without a payload.
199
    V96,
200
    /// Variant 97 with a numeric payload.
201
    V97(u32),
202
    /// Variant 98 without a payload.
203
    V98,
204
    /// Variant 99 with a numeric payload.
205
    V99(u32),
206
    /// Variant 100 without a payload.
207
    V100,
208
    /// Variant 101 with a numeric payload.
209
    V101(u32),
210
    /// Variant 102 without a payload.
211
    V102,
212
    /// Variant 103 with a numeric payload.
213
    V103(u32),
214
    /// Variant 104 without a payload.
215
    V104,
216
    /// Variant 105 with a numeric payload.
217
    V105(u32),
218
    /// Variant 106 without a payload.
219
    V106,
220
    /// Variant 107 with a numeric payload.
221
    V107(u32),
222
    /// Variant 108 without a payload.
223
    V108,
224
    /// Variant 109 with a numeric payload.
225
    V109(u32),
226
    /// Variant 110 without a payload.
227
    V110,
228
    /// Variant 111 with a numeric payload.
229
    V111(u32),
230
    /// Variant 112 without a payload.
231
    V112,
232
    /// Variant 113 with a numeric payload.
233
    V113(u32),
234
    /// Variant 114 without a payload.
235
    V114,
236
    /// Variant 115 with a numeric payload.
237
    V115(u32),
238
    /// Variant 116 without a payload.
239
    V116,
240
    /// Variant 117 with a numeric payload.
241
    V117(u32),
242
    /// Variant 118 without a payload.
243
    V118,
244
    /// Variant 119 with a numeric payload.
245
    V119(u32),
246
    /// Variant 120 without a payload.
247
    V120,
248
    /// Variant 121 with a numeric payload.
249
    V121(u32),
250
    /// Variant 122 without a payload.
251
    V122,
252
    /// Variant 123 with a numeric payload.
253
    V123(u32),
254
    /// Variant 124 without a payload.
255
    V124,
256
    /// Variant 125 with a numeric payload.
257
    V125(u32),
258
    /// Variant 126 without a payload.
259
    V126,
260
    /// Variant 127 with a numeric payload.
261
    V127(u32),
262
}
263
264
/// Construct the selected variant and payload.
265
fn value(tag: u32, payload: u32) -> Many {
266
    match tag {
267
        case 0 => return Many::V0(),
268
        case 1 => return Many::V1(payload),
269
        case 2 => return Many::V2(),
270
        case 3 => return Many::V3(payload),
271
        case 4 => return Many::V4(),
272
        case 5 => return Many::V5(payload),
273
        case 6 => return Many::V6(),
274
        case 7 => return Many::V7(payload),
275
        case 8 => return Many::V8(),
276
        case 9 => return Many::V9(payload),
277
        case 10 => return Many::V10(),
278
        case 11 => return Many::V11(payload),
279
        case 12 => return Many::V12(),
280
        case 13 => return Many::V13(payload),
281
        case 14 => return Many::V14(),
282
        case 15 => return Many::V15(payload),
283
        case 16 => return Many::V16(),
284
        case 17 => return Many::V17(payload),
285
        case 18 => return Many::V18(),
286
        case 19 => return Many::V19(payload),
287
        case 20 => return Many::V20(),
288
        case 21 => return Many::V21(payload),
289
        case 22 => return Many::V22(),
290
        case 23 => return Many::V23(payload),
291
        case 24 => return Many::V24(),
292
        case 25 => return Many::V25(payload),
293
        case 26 => return Many::V26(),
294
        case 27 => return Many::V27(payload),
295
        case 28 => return Many::V28(),
296
        case 29 => return Many::V29(payload),
297
        case 30 => return Many::V30(),
298
        case 31 => return Many::V31(payload),
299
        case 32 => return Many::V32(),
300
        case 33 => return Many::V33(payload),
301
        case 34 => return Many::V34(),
302
        case 35 => return Many::V35(payload),
303
        case 36 => return Many::V36(),
304
        case 37 => return Many::V37(payload),
305
        case 38 => return Many::V38(),
306
        case 39 => return Many::V39(payload),
307
        case 40 => return Many::V40(),
308
        case 41 => return Many::V41(payload),
309
        case 42 => return Many::V42(),
310
        case 43 => return Many::V43(payload),
311
        case 44 => return Many::V44(),
312
        case 45 => return Many::V45(payload),
313
        case 46 => return Many::V46(),
314
        case 47 => return Many::V47(payload),
315
        case 48 => return Many::V48(),
316
        case 49 => return Many::V49(payload),
317
        case 50 => return Many::V50(),
318
        case 51 => return Many::V51(payload),
319
        case 52 => return Many::V52(),
320
        case 53 => return Many::V53(payload),
321
        case 54 => return Many::V54(),
322
        case 55 => return Many::V55(payload),
323
        case 56 => return Many::V56(),
324
        case 57 => return Many::V57(payload),
325
        case 58 => return Many::V58(),
326
        case 59 => return Many::V59(payload),
327
        case 60 => return Many::V60(),
328
        case 61 => return Many::V61(payload),
329
        case 62 => return Many::V62(),
330
        case 63 => return Many::V63(payload),
331
        case 64 => return Many::V64(),
332
        case 65 => return Many::V65(payload),
333
        case 66 => return Many::V66(),
334
        case 67 => return Many::V67(payload),
335
        case 68 => return Many::V68(),
336
        case 69 => return Many::V69(payload),
337
        case 70 => return Many::V70(),
338
        case 71 => return Many::V71(payload),
339
        case 72 => return Many::V72(),
340
        case 73 => return Many::V73(payload),
341
        case 74 => return Many::V74(),
342
        case 75 => return Many::V75(payload),
343
        case 76 => return Many::V76(),
344
        case 77 => return Many::V77(payload),
345
        case 78 => return Many::V78(),
346
        case 79 => return Many::V79(payload),
347
        case 80 => return Many::V80(),
348
        case 81 => return Many::V81(payload),
349
        case 82 => return Many::V82(),
350
        case 83 => return Many::V83(payload),
351
        case 84 => return Many::V84(),
352
        case 85 => return Many::V85(payload),
353
        case 86 => return Many::V86(),
354
        case 87 => return Many::V87(payload),
355
        case 88 => return Many::V88(),
356
        case 89 => return Many::V89(payload),
357
        case 90 => return Many::V90(),
358
        case 91 => return Many::V91(payload),
359
        case 92 => return Many::V92(),
360
        case 93 => return Many::V93(payload),
361
        case 94 => return Many::V94(),
362
        case 95 => return Many::V95(payload),
363
        case 96 => return Many::V96(),
364
        case 97 => return Many::V97(payload),
365
        case 98 => return Many::V98(),
366
        case 99 => return Many::V99(payload),
367
        case 100 => return Many::V100(),
368
        case 101 => return Many::V101(payload),
369
        case 102 => return Many::V102(),
370
        case 103 => return Many::V103(payload),
371
        case 104 => return Many::V104(),
372
        case 105 => return Many::V105(payload),
373
        case 106 => return Many::V106(),
374
        case 107 => return Many::V107(payload),
375
        case 108 => return Many::V108(),
376
        case 109 => return Many::V109(payload),
377
        case 110 => return Many::V110(),
378
        case 111 => return Many::V111(payload),
379
        case 112 => return Many::V112(),
380
        case 113 => return Many::V113(payload),
381
        case 114 => return Many::V114(),
382
        case 115 => return Many::V115(payload),
383
        case 116 => return Many::V116(),
384
        case 117 => return Many::V117(payload),
385
        case 118 => return Many::V118(),
386
        case 119 => return Many::V119(payload),
387
        case 120 => return Many::V120(),
388
        case 121 => return Many::V121(payload),
389
        case 122 => return Many::V122(),
390
        case 123 => return Many::V123(payload),
391
        case 124 => return Many::V124(),
392
        case 125 => return Many::V125(payload),
393
        case 126 => return Many::V126(),
394
        else => return Many::V127(payload),
395
    }
396
}
397
398
/// Compare runtime union values through the generated equality dispatch.
399
fn equal(a: Many, b: Many) -> bool {
400
    return a == b;
401
}
402
403
/// Check equal tags, differing tags, payload differences, and void cases.
404
@default fn main() -> u32 {
405
    for tag in 0..128 {
406
        assert equal(value(tag, 7), value(tag, 7));
407
        assert equal(value(tag, 7), value(tag, 8)) == (tag & 1 == 0);
408
        assert not equal(value(tag, 7), value((tag + 1) % 128, 7));
409
    }
410
    return 0;
411
}