ðÒÅÄÐÏÌÏÖÉÍ, ÞÔÏ ÒÅ×ÉÚÉÑ 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.