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

John Reagan xyzzy1959 at gmail.com
Wed Nov 23 22:46:05 EST 2016


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.



More information about the Info-vax mailing list