Intel XENIX 286 Programmers Guide (86) - Tenox.tc
Intel XENIX 286 Programmers Guide (86) - Tenox.tc Intel XENIX 286 Programmers Guide (86) - Tenox.tc
CONTENTS CHAPTER 1 INTRODUCTION Prerequisites Manual Organization Notation CHAPTER 2 cc: C COMPILER Invoking the C Compiler Creating Programs from C Source Files Compiling a C Source File Compiling Several Source Files Naming the Output File Compiling Programs for the MS-DOS Environment Creating Small, Middle, Large, and Huge Programs Using Object Files and Libraries Creating Object Files Creating Programs from Object Files Linking a Program to Functions in Libraries Creating Smaller and Faster Programs Creating Optimized Object Files Stripping the Symbol Table Removing Stack Probes from a Program Preparing Programs for Debugging Producing an Assembly Language Listing Profiling a Program Controlling the C Preprocessor Defining a Macro Defining Include Directories Ignoring the Default Include Directories Saving a Preprocessed Source File Error Messages C Compiler Messages Setting the Level of Warnings Using Advanced Options Using the near and far Keywords The pascal and fortran Keywords Changing Word Order in Programs Setting the Stack Size Using Modules, Segments, and Groups TABLE OF CONTENTS PAGE 1-1 1-1 1-2 2-1 2-2 2-2 2-3 2-4 2-4 2-5 2-7 2-7 2-8 2-8 2-9 2-9 2-9 2-10 2-10 2-10 2-11 2-12 2-12 2-13 2-13 2-14 2-14 2-14 2-15 2-16 2-16 2-17 2-18 2-18 2-19 iii
Table of Contents CONTENTS Compiler Summary Memory Models Pointer and Integer Sizes Segment and Module Names CHAPTER 3 lint: C PROGRAM CHECKER Invoking lint Checking for Unused Variables and Functions Checking Local Variables Checking for Unreachable Statements Checking for Infinite Loops Checking Function Return Values Checking for Unused Return Values Checking Types Checking Type Casts Checking for Nonportable Character Use Checking for Assignment of longs to ints Checking for Strange Constructions Checking for Use of Older C Syntax Checking Pointer Alignment Checking Expression Evaluation Order Embedding Directives Checking for Library Compatibility CHAPTER 4 make: PROGRAM MAINTAINER Creating a Makefile Invoking make Using Pseudo-Target Names Using Macros Using Shell Environment Variables Using the Built-In Rules Changing the Built-In Rules Using Libraries Troubleshooting Using make: An Example CHAPTER 5 SCCS: SOURCE CODE CONTROL SYSTEM Basic Information iv Files and Directories Deltas and SIDs SCCS Working Files SCCS Command Arguments File Administrator XENIX Programming PAGE 2-20 2-23 2-23 2-24 3-1 3-2 3-3 3-4 3-5 3-5 3-6 3-6 3-7 3-7 3-8 3-8 3-9 3-10 3-11 3-11 3-12 4-1 4-3 4-4 4-5 4-7 4-8 4-9 4-11 4-12 4-13 5-1 5-1 5-2 5-3 5-4 5-4
- Page 1 and 2: 0 • • •
- Page 3: The information in this document is
- Page 7 and 8: Table of Contents CONTENTS Using Ot
- Page 9 and 10: Table of Contents CONTENTS Assemble
- Page 11 and 12: Table of Contents CONTENTS CHAPTER
- Page 13 and 14: Table of Contents TABLES TABLE TITL
- Page 15 and 16: Introduction XENIX Programming 10.
- Page 17 and 18: cc: C Compiler XENIX Programming Cr
- Page 19 and 20: cc: C Compiler XENIX Programming Th
- Page 21 and 22: cc: C Compiler XENIX Programming Th
- Page 23 and 24: cc: C Compiler XENIX Programming Cr
- Page 25 and 26: cc: C Compiler XENIX Programming Th
- Page 27 and 28: cc: C Compiler XENIX Programming Co
- Page 29 and 30: cc: C Compiler XENIX Programming Sa
- Page 31 and 32: cc: C Compiler XENIX Programming Us
- Page 33 and 34: cc: C Compiler XENIX Programming Wh
- Page 35 and 36: cc: C Compiler XENIX Programming Co
- Page 37 and 38: cc: C Compiler XENIX Programming d
- Page 39 and 40: cc: C Compiler XENIX Programming Se
- Page 41 and 42: lint: C Program Checker XENIX Progr
- Page 43 and 44: lint: C Program Checker XENIX Progr
- Page 45 and 46: lint: C Program Checker XENIX Progr
- Page 47 and 48: lint: C Program Checker XENIX Progr
- Page 49 and 50: lint: C Program Checker XENIX Progr
- Page 51 and 52: lint: C Program Checker XENIX Progr
- Page 53 and 54: make: Program Maintainer XENIX Prog
Table of Contents<br />
CONTENTS<br />
Compiler Summary<br />
Memory Models<br />
Pointer and Integer Sizes<br />
Segment and Module Names<br />
CHAPTER 3<br />
lint: C PROGRAM CHECKER<br />
Invoking lint<br />
Checking for Unused Variables and Functions<br />
Checking Local Variables<br />
Checking for Unreachable Statements<br />
Checking for Infinite Loops<br />
Checking Function Return Values<br />
Checking for Unused Return Values<br />
Checking Types<br />
Checking Type Casts<br />
Checking for Nonportable Character Use<br />
Checking for Assignment of longs to ints<br />
Checking for Strange Constructions<br />
Checking for Use of Older C Syntax<br />
Checking Pointer Alignment<br />
Checking Expression Evaluation Order<br />
Embedding Directives<br />
Checking for Library Compatibility<br />
CHAPTER 4<br />
make: PROGRAM MAINTAINER<br />
Creating a Makefile<br />
Invoking make<br />
Using Pseudo-Target Names<br />
Using Macros<br />
Using Shell Environment Variables<br />
Using the Built-In Rules<br />
Changing the Built-In Rules<br />
Using Libraries<br />
Troubleshooting<br />
Using make: An Example<br />
CHAPTER 5<br />
SCCS: SOURCE CODE CONTROL SYSTEM<br />
Basic Information<br />
iv<br />
Files and Directories<br />
Deltas and SIDs<br />
SCCS Working Files<br />
SCCS Command Arguments<br />
File Administrator<br />
<strong>XENIX</strong> Programming<br />
PAGE<br />
2-20<br />
2-23<br />
2-23<br />
2-24<br />
3-1<br />
3-2<br />
3-3<br />
3-4<br />
3-5<br />
3-5<br />
3-6<br />
3-6<br />
3-7<br />
3-7<br />
3-8<br />
3-8<br />
3-9<br />
3-10<br />
3-11<br />
3-11<br />
3-12<br />
4-1<br />
4-3<br />
4-4<br />
4-5<br />
4-7<br />
4-8<br />
4-9<br />
4-11<br />
4-12<br />
4-13<br />
5-1<br />
5-1<br />
5-2<br />
5-3<br />
5-4<br />
5-4