You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

STR34-C. Ensure that source and destination pointers in function arguments do not point to overlapping objects

ARR34-C. Ensure that array types in assignment expressions are compatible

FLP33-C. Prevent decimal errors when converting from integers to floating point numbers

MSC08-A. Library functions should validate their parameters

EXPxx-A. Always use sizeof operator to retrieve datatype sizes

Do not use vfork(2)

DAN30-A. Create a copy constructor and assignment operator for non copyable objects

MSC31-C. Ensure return values are compared against the proper type

INT14-A. Avoid pointer to integer and integer to pointer conversions

MSC05-A. Do not make assumptions about the type of time_t and clock_t

EXP07-A. Use caution with NULL and 0, especially concerning pointers

ENV30-C. Do not modify the string returned by getenv()

MSC09-A Character Encoding - Use Subset of ASCII for Safety

MSC10-A Character Encoding - UTF8 Related Issues

FLP34-C. When demoting floating point numbers, verify that the demoted value fits within the range of the new type.

FIO09-A. fflush() should be called after writing to an output stream has completed.

FLP34-C. When demoting floating point numbers, verify that the demoted value fits within the range of the new type.

Ensure functions are properly defined

Use setlocale() carefully (DRAFT)

MEM38-C. Use Flexible Array Members for dynamically sized structures

MSC07-A. Avoid race conditions with signal handlers

MEM05-A. Avoid large stack allocations

MSC06-A. Avoid race conditions with multiple threads

DCL05-A. Do not use identifiers with different linked classifications

DCL05-A. Do not convert a function pointer to a function of a different type

Understand that strtok() modifies its string argument

Do not cast pointers between objects with differing alignments

Parenthesize library functions to prevent naming conflicts

Don't use a function pointer whose type is not compatible to pointed to type ~Draft~

Only use values for fsetpos that are returned from fgetpos ~Draft~

Minimize the use of enviroment variables ~Draft~

DCL06-A. Use meaningful symbolic constants to represent literal values

STR05-A. String Literals should only be assigned to constant pointers

INT38-C. Ensure that Integer arithmetic and conversion functions are used only if the result can be represented in the type

ENV32-C. Do not call the exit() function more than once

EXP08-A. Ensure pointer arithmetic is used correctly

ENV04-A. Do not call the system() or popen() functions

MSC08-A. Do not perform unbounded copy on returned strings of calls to GNU gettext functions

Overall formatting / editing is poor, reference section unfinished.

Do not call longjmp from inside a signal handler

Do not assume the layout of bitfields in memory (draft)

Do not name a file the same as a standard library in the typical path to search for libraries

Do not assume that an environmental variable is unique based on the name (draft)

Do not unlock or destroy another process's mutex (draft)

Disallow particular characters in file names (draft)

  • No labels