Annotation of coherent/d/bin/load/message.c, revision 1.1

1.1     ! root        1: /*
        !             2:  * ld/message.c
        !             3:  * Print messages of various origins.
        !             4:  */
        !             5: 
        !             6: #include "data.h"
        !             7: 
        !             8: void
        !             9: message( args )
        !            10: char * args;
        !            11: {
        !            12:        printf( "ld: %r\n", &args );
        !            13: }
        !            14: 
        !            15: /*
        !            16:  * Fatal error; print message and exit
        !            17:  */
        !            18: void
        !            19: fatal( args )
        !            20: char * args;
        !            21: {
        !            22:        fprintf( stderr, "ld: %r\n", &args );
        !            23:        exit( 1 );
        !            24: }
        !            25: 
        !            26: /*
        !            27:  * message plus command prototype
        !            28:  */
        !            29: void
        !            30: usage( args )
        !            31: char * args;
        !            32: {
        !            33:        fatal( "%r\n\
        !            34: Usage: ld [-d] [-e entry] [-k[sysnam]] [-i] [-l<name>] [-m] [-n] [-o file]\\\n\
        !            35: \t[-C] [-r] [-s] [-u symbol] [-X|x] file ...",
        !            36:                &args );
        !            37: }
        !            38: 
        !            39: /*
        !            40:  * message with filename
        !            41:  */
        !            42: void
        !            43: filemsg( fname, args )
        !            44: char   *fname, *args;
        !            45: {
        !            46:        message( "file %s: %r", fname, &args );
        !            47: }
        !            48: 
        !            49: /*
        !            50:  * Message with module and file name
        !            51:  */
        !            52: void
        !            53: modmsg( fname, mname, args )
        !            54: char * fname;
        !            55: char   mname[DIRSIZ];
        !            56: char * args;
        !            57: {
        !            58:        if ( mname[0] == 0 )
        !            59:                filemsg( fname, "%r", &args );
        !            60: 
        !            61:        else
        !            62:                filemsg( fname, "module %.*s: %r",
        !            63:                        DIRSIZ, mname, &args );
        !            64: }
        !            65: 
        !            66: /*
        !            67:  * Message for module passed by pointer
        !            68:  */
        !            69: void
        !            70: mpmsg( mp, args )
        !            71: mod_t * mp;
        !            72: char  * args;
        !            73: {
        !            74:        modmsg( mp->fname, mp->mname, "%r", &args );
        !            75: }
        !            76: 
        !            77: /*
        !            78:  * Message for symbol passed by pointer
        !            79:  */
        !            80: void
        !            81: spmsg( sp, args )
        !            82: sym_t  *sp;
        !            83: char   *args;
        !            84: {
        !            85:        if ( sp->mod == NULL )
        !            86:                message( "symbol %.*s: %r", NCPLN, sp->s.ls_id, &args );
        !            87: 
        !            88:        else
        !            89:                mpmsg( sp->mod, "symbol %.*s: %r", NCPLN, sp->s.ls_id, &args );
        !            90: }

unix.superglobalmegacorp.com

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