File:  [CSRG BSD Unix] / 43BSD / contrib / icon / operators / null.c
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 16:12:55 2018 UTC (8 years, 1 month ago) by root
Branches: MAIN, BSD
CVS tags: HEAD, BSD43
BSD 4.3

#include "../h/rt.h"

/*
 * /x - test x for null value.
 */

null(nargs, arg1, arg0)
int nargs;
struct descrip arg1, arg0;
   {
   DclSave
   SetBound;

   /*
    * If x is null, it is returned, otherwise, the function fails.
    *  Because the pre-dereference value of x is the return value (if
    *  any), x is copied into arg0.
    */
   arg0 = arg1;
   DeRef(arg1)
   if (!NULLDESC(arg1))
      fail();
   ClearBound;
   }

Opblock(null,1,"/")

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.