.pg .x descr .x Obsolete Macros > descr .lt ------------------------------------------------------------------------ DESCR .BLKx length [address] [allot] ------------------------------------------------------------------------ .el .b 3 This macro will allocate the appropriate descriptor structure for the storage type specified: .b One the following directives must be used in place of .BLK^&x\&. .b .lt .BLKA addresses (longwords) .BLKB bytes .BLKD double-precision floating-point (quadwords) .BLKF single-precision floaging-point (longwords) .BLKG G_floating (quadwords) .BLKH H_floating (octawords) .BLKL longwords .BLKO octawords .BLKQ quadwords .BLKW words .el .b If ^&address\& is specified as the asterisk character (i.e. _*), the DESCR macro will also generate the appropriate block storage allocation directive. .b If ^&address\& is not specified, no storage allocation directive is generated; you must then follow the DESCR macro with the appropriate storage allocation directive. .b If ^&address\& is specified and allot is specified as the asterisk character, the DESCR macro will generate the appropriate block storage allocation directive and assign it to the label address. .b For example: .b .lt var longword_descr: descr .blkl 1 * .el .b will generate the following code: .b .lt longword_descr: .word 1 .byte dsc$k_dtype_l .byte dsc$k_class_s .address 30001$ 30001$: .blkl 1 .el .b See also D__DESCR, STDESCR, and D__STDESCR.