[Info-vax] Calling standards, was: Re: Byte range locking - was Re: Oracle

David Froble davef at tsoft-inc.com
Thu Nov 24 04:24:39 EST 2016


John Reagan wrote:
> On Wednesday, November 23, 2016 at 7:42:37 PM UTC-5, Craig A. Berry wrote:
>> On 11/23/16 12:59 PM, Bob Koehler wrote:
>>> In article <>, Bill Gunshannon <> writes:
>>>> As I said, I don't have a manual handy.  I am aware that the VAX
>>>> had descriptors, but I would be extremely surprised if the .ASCIZ
>>>> and .PRINT weren't still there again, primarily for backwards
>>>> compatibility.
>>>    VAX macro has an .ASCIZ directive.  Never had any use for it, even
>>>    after we started doing C.  Can't seem to find a .PRINT directive, but
>>>    I haven't done an exhaustive search.
>> 30 seconds with a search engine reveals that .PRINT, .WARNING, and
>> .ERROR in VAX MACRO are assembly-time directives that print the comment,
>> i.e., everything after the semicolon. As far as I can see, the strings
>> are always constants of known length and the only thing that could crash
>> is assembling your program, not running it. I've never really been a
>> MACRO person but I think I've usually seen people use LIB$PUT_OUTPUT for
>> printing, and of course that is a descriptor-based interface.
>>
>> I don't recall whether there are any native interfaces that use .ASCIZ
>> but there are certainly MACRO programs that use it. And when coding in
>> assembler, surely null-terminated strings are the least of your worries
>> as far as accessing memory that doesn't belong to you. Which makes all
>> the dumping on C kind of silly considering a third of VMS is written in
>> a far more dangerous language. Dunno about BLISS. Maybe it's two thirds.
> 
> BLISS has %ASCIZ from the beginning at DEC (don't know about the CMU versions).  I've used it once or twice.

Yes, and we used to have automobiles without seat belts, or air bags.  But we 
can learn, and perhaps stop using things that don't work too well.



More information about the Info-vax mailing list