📄 no.166.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: 166\n");# io.print("# >Category: MIL\n");# io.print("# >Synopsis: loading module enum in a block, proc or batloop fails\n");# io.print("# >Confidential: no\n");# io.print("# >Severity: serious\n");# io.print("# >Priority: medium\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: Thu Aug 13 17:51:39 1998\n");# io.print("# >Originator: manegold@cwi.nl\n");# io.print("# >Organization:\n");# io.print("# CWI\n");# io.print("# >Release: 980101\n");# io.print("# >Environment:\n");# io.print("# any\n");# io.print("# >Description:\n");# io.print("# loading module enum in a block, proc or batloop\n");# io.print("# stops the evaluation of the very block immediately.\n");# io.print("#\n");# io.print("# ========\n");# io.print("# test script\n");# io.print("# --------\n");# io.print("# loaded;\n");# io.print("#\n");# io.print("# {\n");# io.print("# printf(\"\\nloading '%s' ... \",\"enum\");\n");# io.print("# module(\"enum\");\n");# io.print("# printf(\"done.\\n\\n\");\n");# io.print("# loaded;\n");# io.print("# printf(\"\\ndropping '%s' ... \",\"enum\");\n");# io.print("# drop(\"enum\");\n");# io.print("# printf(\"done.\\n\\n\");\n");# io.print("# loaded;\n");# io.print("# }\n");# io.print("#\n");# io.print("# quit;\n");# io.print("#\n");# io.print("# ========\n");# io.print("# output\n");# io.print("# --------\n");# io.print("# loaded;\n");# io.print("# #---------------------------------#\n");# io.print("# # module | usage_count #\n");# io.print("# #---------------------------------#\n");# io.print("# [ \"kernel\", 1 ]\n");# io.print("# [ \"arith\", 1 ]\n");# io.print("# [ \"bat\", 1 ]\n");# io.print("# [ \"algebra\", 1 ]\n");# io.print("# [ \"sys\", 1 ]\n");# io.print("# [ \"trans\", 1 ]\n");# io.print("#\n");# io.print("# {\n");# io.print("# printf(\"\\nloading '%s' ... \",\"enum\");\n");# io.print("# module(\"enum\");\n");# io.print("# printf(\"done.\\n\\n\");\n");# io.print("# loaded;\n");# io.print("# printf(\"\\ndropping '%s' ... \",\"enum\");\n");# io.print("# drop(\"enum\");\n");# io.print("# printf(\"done.\\n\\n\");\n");# io.print("# loaded;\n");# io.print("# }\n");# io.print("#\n");# io.print("# loading 'enum' ... \n");# io.print("# quit;\n");# io.print("#\n");# io.print("# --------\n");# io.print(""); aa_a := oid(20000000); ba_a := setoid(aa_a);# io.print(""); ca_a := loaded();# io.print("{"); da_a := printf("\nloading '%s' ... ","enum");!ERROR: "printf("\nloading '%%s' ... ","enum");"! ^! syntax error, unexpected TOK_MODULE.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -