📄 no.149.mal
字号:
# Monet Mil to Mal compiler# Copyright (c) 2001-2004, CWI. All rights reserved.#Predefined code segment#The compiler can not guarantee an accurate compilation,#because MIL unlike MAL is a dynamically typed language.#A few guidelines to maximize usefullness.#- make the type of variables explicit, in particular 'nil'#- upon advice of M2m to remap identifiers, change it in your program directly#use the "mil_schema" for additional support routines# io.print("# >Number: 149\n");# io.print("# >Category: Mserver\n");# io.print("# >Synopsis: string manipulation in while loops has problems\n");# io.print("# >Confidential: no\n");# io.print("# >Severity: critical\n");# io.print("# >Priority: high\n");# io.print("# >Responsible: boncz (Peter Boncz)\n");# io.print("# >State: open\n");# io.print("# >Class: sw-bug\n");# io.print("# >Submitter-Id: unknown\n");# io.print("# >Arrival-Date: Tue Mar 24 10:59:26 1998\n");# io.print("# >Originator: niels@cwi.nl\n");# io.print("# >Organization:\n");# io.print("# UvA\n");# io.print("# >Release: 980101\n");# io.print("# >Environment:\n");# io.print("# SunOS\n");# io.print("# >Description:\n");# io.print("# Following script\n");# io.print("# crashes and returns wrong output\n");# io.print("# \n");# io.print("# var b := new (int, str );\n");# io.print("# \n");# io.print("# proc test1() : void {\n");# io.print("# var i := 1;\n");# io.print("# \" test1\".print;\n");# io.print("# s := sprintf(\"Hallo dit is een string %d\", i);\n");# io.print("# s.print;\n");# io.print("# b.insert(i,s);\n");# io.print("# # b.insert(i,sprintf(\"Hallo %d\", i));\n");# io.print("# \" end test1\".print;\n");# io.print("# }\n");# io.print("# \n");# io.print("# var j := 0;\n");# io.print("# while(j < 5 ){\n");# io.print("# test1;\n");# io.print("# j := j + 1;\n");# io.print("# }\n");# io.print("# \n");# io.print("# b.print;\n");# io.print("# quit;\n");# io.print("# \n");# io.print("# \n");# io.print("setoid(oid(20000000));"); aa_a := calc.oid(20000000); ba_a := setoid(aa_a);# io.print("var b := new (int, str );"); b := bbp.new(nil:int,nil:str);# io.print("proc test1() : void {");function test1():void;# io.print(" var i := 1;"); i := 1;!ERROR: " " test1".print();"! ^! syntax error, unexpected '.', expecting TOK_ITERATION or TOK_ITERATION_PAR or ';'.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -