  Q The MACRO-32 Type Checker applies type checking rules you can specify to MACRO-32 Q code. It can be used on VAX and AXP MACRO-32 listing files. Below are some actual L errors that were detected by the tool. Can you spot the defect in each case?  J The tool consists of several DCL command files, a text file containing theB type checking rules and a postscript file containing a user guide.     ******************************  '                       000002C0     5608 Q                       000002C0     5609         MOVW    G^SGN$GW_SMP_SANITY_CNT,- i                       000002C0     5610                 CPU$L_SANITY_TIMER(R6)  ; INIT SANITY CYCLE COUNT B WARN: CPU$L_SANITY_TIMER(R6) not WORD field ---------------------^P                       000002C9     5611         MOVAL   CPU$L_SANITY_TIMER(R6),-u                       000002C9     5612                 CPU$L_TPOINTER(R6)      ; INIT POINTER TO "NEIGHBOR'S" SANITY m                       000002D0     5613                                         ;  TIMER TO POINT TO OURSELF.    ******************************  v                       00000CB9     9952 10$:    BBC     #IOC$V_TYPE,R10,20$     ; branch if not searching for dev typeH                       00000CBD     9953         CMPZV   #MSCP$V_MTYP_N,-I                       00000CBD     9954                 #MSCP$V_MTYP_D1,- > WARN: #MSCP$V_MTYP_D1 not SIZE field ------------------------^m                       00000CBD     9955                 UCB$L_MEDIA_ID(R5),R3   ; is this the requested type? _                       00000CC4     9956         BNEQ    70$                     ; branch if not k                       00000CC6     9957 20$:    BISB    #IOC$M_EXISTS,R10       ; note eligible device seen    ******************************  I                       0000089B     4318                 PCB$L_PIXHIST(R4) E                  ?01T 000008A3     4319         .IF     NDF,V52_DEBUG G                  ?01T 000008A3     4320         BBC     #CPB$C_VECTOR,- = WARN: #CPB$C_VECTOR not VIELD field ------------------------^ |                  ?01T 000008A3     4321                 PCB$L_CAPABILITY(R4),30$    ; Branch if process does not have vector capabil +                  ?01T 000008A3     4321 ity G                  ?01T 000008A9     4322         CMPB    PCB$B_PRI(R4),-    ******************************  q                       0000011D     2594         MOVL    IMAGE_FIL_INFO(R8),R18  ; and image file info we received u                       00000121     2595         JSB     (R5)                    ; and transfer control to TRACE/DEBUG u                       00000123     2596         MOVL    SS$_CONTINUE, R0        ; If DEBUG/TRACE returns, continue in = WARN: SS$_CONTINUE not LONG,ADDR,PTR_L,INT_S,PTR_S field ---^ = WARN: SS$_CONTINUE not used in LITERAL addressing mode -----^ ^                       0000012A     2597         RET                             ; user's code.'                       0000012B     2598 '                       0000012B     2600    ******************************  v                       00000061     3094         DSBINT  #IPL$_ASTDEL            ;PREVENT SYSTEM WORKING SET GROWTH ASTe                       00000061     3095         MOVL    G^CTL$GL_PHD,R5         ; R5 = P1 PHD address j                       00000068     3096         BBSSI   #PHD$M_NO_WS_CHNG,-     ; Prevent SWAPPER trimming? WARN: #PHD$M_NO_WS_CHNG not VIELD field ----------------------^ u                       00000068     3097                 PHD$W_FLAGS(R5),25$     ; Must be atomic incase of reschedule n                       00000072     3098 25$:    MOVZWL  #SS$_WASCLR,R0          ;INIT TO 'PAGES WERE UNLOCKED'^                       00000075     3099         BBSS    #LCK_V_LCKPAG,R8,30$    ;SET LOCK FLAG   ******************************  :                       000000B3     3114 35$:    POPL    R0e                       000000B6     3115 40$:    MOVL    G^CTL$GL_PHD,R5         ; R5 = P1 PHD address h                       000000BD     3116         BBCCI   #PHD$M_NO_WS_CHNG,-     ; Allow SWAPPER trimming? WARN: #PHD$M_NO_WS_CHNG not VIELD field ----------------------^ u                       000000BD     3117                 PHD$W_FLAGS(R5),41$     ; Must be atomic incase of reschedule d                       000000CA     3125 41$:    ENBINT                          ;RESTORE CALLERS IPL3                       000000CA     3126 45$:    RET    ******************************  '                       0000074F     5126 [                       0000074F     5127         EVAX_SRL        -               ; Fetch PFN H                       0000074F     5128                 R10,PTE$V_PFN,R0? WARN: PTE$V_PFN not used in LITERAL addressing mode ----------^ s                       00000757     5129         ACBW    #1,#-1,-                ; Remove a buffer object reference, v                       00000757     5130                 @W^PFN$AW_SWPPAG[R0],20$; and branch if it is not the last ones                       00000762     5131         BLSS    23$                     ; Bugcheck if ref cnt went negative    ******************************  \                       00000979     5287         BICL    #PFN$M_BUFOBJ,-         ; Clear flagP                       00000979     5288                 @W^PFN$AL_PAGE_STATE[R0]p                       00000983     5289         BITL    @PFN$M_MODIFY,-         ; Buffer object pages must go to= WARN: @PFN$M_MODIFY not used in LITERAL addressing mode ----^ h                       00000983     5290                 @W^PFN$AL_PAGE_STATE[R0]; the modified page list;                       0000098D     5291         BNEQ    50$ J                       000009A2     5292 20$:    BUG_CHECK ICONPFNDAT,FATAL ******************************                     