[metadata]
id = "INT36-C"
type = "rule"
category = "INT"
number = 36
title = "Converting a pointer to integer or integer to pointer"
description = """
Although programmers often use integers and pointers interchangeably in C,
pointer-to-integer and integer-to-pointer conversions areimplementation-defined.
Conversions between integers and pointers can have undesired consequences
depending on theimplementation. According to the C Standard, subclause 6.3.2.3
[ISO/IEC 9899:2024],
"""
severity = "Low"
likelihood = "Probable"
priority = "P4"
level = "L3"
cert_version = "2016 Edition (Wiki)"
last_modified = "Aug 31, 2025"
[rules.cert_c.INT36-C]
enabled = true
[references]
wiki = "https://wiki.sei.cmu.edu/confluence/display/c/INT36-C.+Converting+a+pointer+to+integer+or+integer+to+pointer"
cwe = ["CWE-587", "CWE-704", "CWE-758", "CWE-119", "CWE-466"]