comm-vms.ch
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:2k
源码类别:

通讯编程

开发平台:

Visual C++

  1. This is the change file for CWEB's COMMON under VAX/VMS.
  2. created:
  3.     1987 BL (Bjorn Larsen, University of Oslo)
  4. modified:
  5.     01-FEB-1992 ST (Stephan Trebels <trebels@ams02.dnet.gwdg.de>)
  6.     > include ctype,stdio,ssdef from textlibrary SYS$SHARE:VAXCDEF.TLB
  7.     > change error return code to SS$_ABORT
  8.       (perhaps better than %NONAME-E-NOMSG, Message number 2 )
  9. (also modified by Don Knuth to match changes in the master file)
  10. (only the two changes by BL are necessary for initial bootstrapping
  11.  via hand-editing of common.c)
  12. @x section 5 (01-FEB-1992 ST)
  13. #include <ctype.h>
  14. @y
  15. #include ctype /* VMS searches Textlibraries faster */
  16. @z
  17. @x section 8  (01-FEB-1992 ST)
  18. #include <stdio.h>
  19. @y
  20. #include stdio /* VMS searches Textlibraries faster */
  21. @z
  22. @x section 61 (01-FEB-1992 ST)
  23. programs are started. Here, for instance, we pass the operating system
  24. a status of 0 if and only if only harmless messages were printed.
  25. @y
  26. programs are started. Here, for instance, we pass VAX/VMS
  27. a status of |SS$_NORMAL| if and only if only harmless
  28. messages have been printed.
  29. A suitable status to signal an error condition to VAX/VMS could be
  30. |SS$_ABORT|, telling the operating system to
  31. print |"%SYSTEM-F-ABORT, abort"|, if |history > harmless_message|.
  32. @z
  33. @x section 61 (1987 BL) (01-FEB-1992 ST) (11-JAN-1993 DEK)
  34.   if (history > harmless_message) return(1);
  35.   else return(0);
  36. @y
  37. /*
  38.    VAX/VMS and UNIX have different error status conventions.
  39.    VAX/VMS uses odd values (for example |SS$_NORMAL|) to indicate success,
  40.    even values indicate errors, resulting in messages displayed
  41.    on the screen. |SS$_ABORT| has been chosen, to indicate an
  42.    error and display something that's not complete nonsense.
  43. */
  44.   if (history > harmless_message) exit(SS$_ABORT);
  45.   else exit(SS$_NORMAL);
  46. @z
  47. @x section 69 (01-FEB-1992 ST)
  48. An omitted change file argument means that |"/dev/null"| should be used,
  49. when no changes are desired.
  50. @y
  51. An omitted change file argument means that the
  52. null device |"NL:"| should be used, when no changes are desired.
  53. @z
  54. @x section 70 (1987 BL) (01-FEB-1992 ST) (05-APR-1992 DEK)
  55.   if (found_change<=0) strcpy(change_file_name,"/dev/null");
  56. @y
  57.   if (found_change<=) strcpy(change_file_name,"NL:");
  58. /* {tt NL:} is the VAX/VMS notation for {tt /dev/null} */
  59. @z
  60. @x section 82 (01-FEB-1992 ST)
  61. @** Index.
  62. @y
  63. @* VAX/VMS specific code.
  64. We have used |SS$_NORMAL| and |SS$_ABORT| as return codes,
  65. so we have to include the system message codes.
  66. @<Include files@>=
  67. #include ssdef /* we need VAX/VMS system messages */
  68. @** Index.
  69. @z