aboutsummaryrefslogtreecommitdiff
path: root/projects/CodeBlocks/raylib_codeblocks_tpl.depend
diff options
context:
space:
mode:
authorAhmad Fatoum <ahmad@a3f.at>2018-02-22 02:05:00 +0100
committerAhmad Fatoum <ahmad@a3f.at>2018-02-24 23:39:23 +0100
commitf52d2de582643719814987f7335668b611a4edbd (patch)
tree26a5741019a2e505ea7fc337d41bca13403a2e60 /projects/CodeBlocks/raylib_codeblocks_tpl.depend
parented6962edd37d362db2425c6d476dc4688243256c (diff)
downloadraylib-f52d2de582643719814987f7335668b611a4edbd.tar.gz
raylib-f52d2de582643719814987f7335668b611a4edbd.zip
raymath.h: Use C99 inline semantics
RAYMATH_EXTERN_INLINE was renamed to RAYMATH_HEADER_ONLY, which user code may define if they want to use it as header-only library. If multiple files in the same project define RAYMATH_HEADER_ONLY, they might each have duplicate out-of-line definitions of the same functions. By default, raymath.h exposes inline definitions, which instructs the compiler _not_ to generate out-of-line definitons, if out-of-line definitions are required, those of the file defined with RAYLIB_IMPLEMENTATION are used instead. There may be only one such file. In C++ mode, the compiler will select only one out-of-line definition automatically, so no need to define a RAYLIB_IMPLEMENTATION. Unfortunately, we have to remove raymath function declaration from raylib.h as those declarations would lead to duplicate out-of-line definitions which would yield linker errors. This problem didn't exist with GNU89 or C++, because there multiple defintions are ok, but in C99 they aren't.
Diffstat (limited to 'projects/CodeBlocks/raylib_codeblocks_tpl.depend')
0 files changed, 0 insertions, 0 deletions