- Do not use identifiers that are already declared - For examplee.g., don't name a variable errno
 
- Do not pass functions invalid values
- For floating point exception functions, only pass 0or bitwise OR of floating point macros
- Do not modify the string returned by setlocale()
- Do not call setjmp()in stupid places (eg. header files)
- Do not call longjmp()before callingsetjmp()
- Do not call va_start()with a parameter declared with the register storage class, of array type, or a type that isn't compatible with the type after default argument promotions
- Do not try to get the address constant of a bit-field - For examplee.g., do not: &(t.member-designator)
 
- When functions fail, data structures often have indeterminate contents - ege.g., wcsxfrm(),wcsftime(),mbrtowc(),wcrtomb(),strxfrm(),strftime()
 
- Do not mismatch multibyte conversion states with character sequences in another state
- Only pass functions the type they ask for - We might already have a rule for this, but I couldn't find it
 
- If the result of a function cannot be represented, the behavior is undefined - e.g., abs(),labs(),llabs(),div(),ldiv(),lldiv().
 
 
    
    
            
 
    
    
    
    
    
    
    
    
        
             
            
    
    
        
            
            
    
 
 
 
    {"serverDuration": 66, "requestCorrelationId": "6413f356f482f060"}