Go to the first, previous, next, last section, table of contents.


ðÒÉÍÅÒ ËÏÎÆÌÉËÔÁ

ðÒÅÄÐÏÌÏÖÉÍ, ÞÔÏ ÒÅ×ÉÚÉÑ 1.4 ÆÁÊÌÁ `driver.c' ÓÏÄÅÒÖÉÔ ÔÁËÏÊ ËÏÄ:

#include <stdio.h>

void main()
{
    parse();
    if (nerr == 0)
        gencode();
    else
        fprintf(stderr, "No code generated.\n");
    exit(nerr == 0 ? 0 : 1);
}

òÅ×ÉÚÉÑ 1.6 ÆÁÊÌÁ `driver.c' ÓÏÄÅÒÖÉÔ ÔÁËÏÊ ËÏÄ:

#include <stdio.h>

int main(int argc,
         char **argv)
{
    parse();
    if (argc != 1)
    {
        fprintf(stderr, "tc: No args expected.\n");
        exit(1);
    }
    if (nerr == 0)
        gencode();
    else
        fprintf(stderr, "No code generated.\n");
    exit(!!nerr);
}

÷ÁÛÁ ÒÁÂÏÞÁÑ ËÏÐÉÑ ÆÁÊÌÁ `driver.c', ÏÓÎÏ×ÁÎÎÁÑ ÎÁ ÒÅ×ÉÚÉÉ 1.4, ÐÅÒÅÄ ×ÙÐÏÌÎÅÎÉÅÍ `cvs update' ÓÏÄÅÒÖÉÔ ÔÁËÏÊ ËÏÄ:

#include <stdlib.h>
#include <stdio.h>

void main()
{
    init_scanner();
    parse();
    if (nerr == 0)
        gencode();
    else
        fprintf(stderr, "No code generated.\n");
    exit(nerr == 0 ? EXIT_SUCCESS : EXIT_FAILURE);
}

÷Ù ×ÙÐÏÌÎÑÅÔÅ `cvs update':

$ cvs update driver.c
RCS file: /usr/local/cvsroot/yoyodyne/tc/driver.c,v
retrieving revision 1.4
retrieving revision 1.6
Merging differences between 1.4 and 1.6 into driver.c
rcsmerge warning: overlaps during merge
cvs update: conflicts found in driver.c
C driver.c

CVS ÓÏÏÂÝÁÅÔ, ÞÔÏ ×Ù ×ÓÔÒÅÔÉÌÉÓØ Ó ËÏÎÆÌÉËÔÁÍÉ. ÷ÁÛ ÉÓÈÏÄÎÙÊ ÒÁÂÏÞÉÊ ÆÁÊÌ ÓÏÈÒÁÎÅÎ × `.#driver.c.1.4'. îÏ×ÁÑ ×ÅÒÓÉÑ `driver.c' ÓÏÄÅÒÖÉÔ ÔÁËÏÊ ËÏÄ:

#include <stdlib.h>
#include <stdio.h>

int main(int argc,
         char **argv)
{
    init_scanner();
    parse();
    if (argc != 1)
    {
        fprintf(stderr, "tc: No args expected.\n");
        exit(1);
    }
    if (nerr == 0)
        gencode();
    else
        fprintf(stderr, "No code generated.\n");
<<<<<<< driver.c
    exit(nerr == 0 ? EXIT_SUCCESS : EXIT_FAILURE);
=======
    exit(!!nerr);
>>>>>>> 1.6
}

úÁÍÅÔØÔÅ, ÞÔÏ ÎÅÐÅÒÅÓÅËÁÀÝÉÅÓÑ ÍÏÄÉÆÉËÁÃÉÉ ×ËÌÀÞÅÎÙ × ×ÁÛÕ ÒÁÂÏÞÕÀ ËÏÐÉÀ, Á ÐÅÒÅÓÅËÁÀÝÁÑÓÑ ÓÅËÃÉÑ ÞÅÔËÏ ÏÂÏÚÎÁÞÅÎÁ ÓÔÒÏËÁÍÉ `<<<<<<<', `=======' and `>>>>>>>'.

òÁÚÒÅÛÉÔØ ËÏÎÆÌÉËÔ ÍÏÖÎÏ, ÏÔÒÅÄÁËÔÉÒÏ×Á× ÆÁÊÌ, ÕÄÁÌÉ× ÍÁÒËÅÒÙ É ÎÅ×ÅÒÎÙÊ ×ÁÒÉÁÎÔ. ðÒÅÄÐÏÌÏÖÉÍ, × ÒÅÚÕÌØÔÁÔÅ Õ ×ÁÓ ÐÏÌÕÞÉÌÓÑ ÔÁËÏÊ ÆÁÊÌ:

#include <stdlib.h>
#include <stdio.h>

int main(int argc,
         char **argv)
{
    init_scanner();
    parse();
    if (argc != 1)
    {
        fprintf(stderr, "tc: No args expected.\n");
        exit(1);
    }
    if (nerr == 0)
        gencode();
    else
        fprintf(stderr, "No code generated.\n");
    exit(nerr == 0 ? EXIT_SUCCESS : EXIT_FAILURE);
}

ôÅÐÅÒØ ×Ù ÍÏÖÅÔÅ ÐÏÍÅÓÔÉÔØ ÜÔÏÔ ÆÁÊÌ × ÒÅÐÏÚÉÔÏÒÉÊ × ËÁÞÅÓÔ×Å ÒÅ×ÉÚÉÉ 1.7.

$ cvs commit -m "Initialize scanner. Use symbolic exit values." driver.c
Checking in driver.c;
/usr/local/cvsroot/yoyodyne/tc/driver.c,v  <--  driver.c
new revision: 1.7; previous revision: 1.6
done

þÔÏÂÙ ÚÁÝÉÔÉÔØ ×ÁÓ, CVS ÏÔËÁÖÅÔÓÑ ÆÉËÓÉÒÏ×ÁÔØ ÆÁÊÌ, ÅÓÌÉ × ÎÅÍ ÐÒÏÉÚÏÛÅÌ ËÏÎÆÌÉËÔ É ×Ù Ó ÎÉÍ ÎÅ ÓÐÒÁ×ÉÌÉÓØ. ÷ ÎÁÓÔÏÑÝÉÊ ÍÏÍÅÎÔ ÄÌÑ ÒÁÚÒÅÛÅÎÉÑ ËÏÎÆÌÉËÔÁ ÎÕÖÎÏ ÉÚÍÅÎÉÔØ ÄÁÔÕ ÍÏÄÉÆÉËÁÃÉÉ ÆÁÊÌÁ. ÷ ÐÒÅÄÙÄÕÝÉÈ ×ÅÒÓÉÑÈ CVS ×ÁÍ ÔÁËÖÅ ÔÒÅÂÏ×ÁÌÏÓØ ÕÂÅÄÉÔØÓÑ, ÞÔÏ ÆÁÊÌ ÎÅ ÓÏÄÅÒÖÉÔ ÍÁÒËÅÒÏ× ËÏÎÆÌÉËÔÁ. ôÁË ËÁË ×ÁÛ ÆÁÊÌ ÄÅÊÓÔ×ÉÔÅÌØÎÏ ÍÏÖÅÔ ÓÏÄÅÒÖÁÔØ ÍÁÒËÅÒÙ ËÏÎÆÌÉËÔÏ× (ÓÉÍ×ÏÌÙ `>>>>>>>>' × ÎÁÞÁÌÅ ÓÔÒÏËÉ, ÎÅ ÏÂÏÚÎÁÞÁÀÝÉÅ ËÏÎÆÌÉËÔÁ), ÔÏ × ÔÅËÕÝÅÊ ×ÅÒÓÉÉ CVS ×ÙÄÁÅÔ ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ É ÆÉËÓÉÒÕÅÔ ÆÁÊÌ.

åÓÌÉ ×Ù ÉÓÐÏÌØÚÕÅÔÅ pcl-cvs (ÏÂÏÌÏÞËÁ Ë CVS ÄÌÑ Emacs) ×ÅÒÓÉÉ 1.04 ÉÌÉ ÐÏÚÖÅ, ×Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÐÁËÅÔ emerge, ÐÏÍÏÇÁÀÝÉÊ ÒÁÚÒÅÛÁÔØ ËÏÎÆÌÉËÔÙ. óÍÏÔÒÉÔÅ ÄÏËÕÍÅÎÔÁÃÉÀ ÐÏ pcl-cvs.


Go to the first, previous, next, last section, table of contents.