Skip to content

Files

Latest commit

 

History

History
11 lines (6 loc) · 588 Bytes

CastAddressToIntegerAtReturn.md

File metadata and controls

11 lines (6 loc) · 588 Bytes

Pattern: Returning address value in function with integer return type

Issue: -

Description

Returning an address value in a function with integer (int/long/etc) return type is not portable across different platforms and compilers. For example in 32-bit Windows and Linux they are same width, but in 64-bit Windows and Linux they are of different width. In worst case you end up casting 64-bit address down to 32-bit integer. The safe way is to always return an integer.

Further Reading