Skip to content

gmilPatternsOpcodes

The pattern support operations are used to facilitate the transformations of the opcodes produced by to compiler into opcodes that produce the correct translations when they are authored. They are as follows:

OpcodeDescription
NEWStart new command
ARGSpecify argument type
BIFReference to built in function
EOPEnd of property section
EOSEnd of control property sequence
COMCombine arguments
APSAuthor pattern string
LEVSpecify calling level
TYVLoad type of variable
PATLoad pattern from library
SCTSet extended control type
PARPass an argument unspecified
TMPEstablish a temporary value
REFAnchor a reference to a symbol
INVDefine initial value for a basic type
DPSLoad Declared pattern string
CMTComment out preceding statement


The CMT opcode has 19 DoubleByte operations as follows. It has no special role. Generally, its operations insert comments into the target code. They are as follows:

OperationDescription
CommentOutA generic operation that comments out a statement
DeleteA generic operation that deletes a statement
DeprecatedAuthors a Deprecated message before a statement
NotImplementedAuthors a Not Implemented comment before a commented out statement
MustCorrectAuthors a Must Correct comment before a commented out statement
WarnMessageAuthors a component specific Deprecated message before a statement
IssueMessageAuthors a component specific Not Implemented message before a commented out statement
IssueCommentAuthors a component specific Commentet Out message before a commented out statement
IfStatementComments out a If statement referencing a component to be commented out
ElseIfTrueComments out an else if statement referencing a component to be commented out
ElseAnythingComments out an else statement referencing a component to be commented out
EndIfComments out an end if whose corresponding if referenced a component to be commented out
OnErrorResumeComments out On Error Resume statements that were not analysed out
OnErrorGotoComments out On Error Goto statements that were not analysed out
OnErrorTurnOffComments out On Error Goto 0 statements that were not analysed out
Resume0Comments out Resume statements that were not analysed out
ResumeNextComments out Resume Next statements that were not analysed out
ResumeLabelComments out Resume label statements that were not analysed out
WriteLineWrites various types of extraneous statements within authored ASP pages


The CMT.CommentOut operation is emitted by the method Opcode_CommentOut() when its cmType parameter is set to CMT.CommentOut or when its cmType parameter is not set to CMT.Delete and the Select CodeCommentOut attribute is on. Its surface form argument is the representation of the statement being commented out

<subcode id="CommentOut">
<vbn narg="1" code="' %1d\n"/>
<csh narg="1" code="// %1d\n"/>
</subcode>

and its effect is to add the appropriate comment character at the front of the statement.


The CMT.Delete operation is emitted by the method Opcode_CommentOut() when its cmType parameter is set to CMT.Delete. Its surface form arguments are the entire current content of the string queue

<subcode id="Delete">
<all narg="9"/>
</subcode>

and its effect is to simply empty the string queue.


The CMT.NotImplemented operation is emitted by the method Opcode_CommentOut() when its cmType parameter is set to CMT.NotImplemented and the Select CodeCommentOut attribute is off. Its surface form argument is the representation of the statement being commented out

<subcode id="NotImplemented">

and its effect enclose is to add the appropriate comment character at the front of the statement.