use -fno-strict-aliasing for code using COM pointers
Following the discussion in !869 (merged) it might not be safe to cast to void**
to get pointer values and thus using IID_PPV_ARGS
or WRL
. Using -fno-strict-aliasing
should allow us to use this helpful Windows/compiler API's.
This might be backported to 3.0 where COM and WRL are used.
v2:
- C++ modules only
- renamed to
LIBCOMFLAGS
v3:
- added freetype/dwrite which uses WRL and COM without LIBCOM (DWriteCreateFactory)
- split the general commit using
LIBCOMFLAGS
so they can be backported to 3.0 independently
v4:
- test
-fno-strict-aliasing
with the C++ compiler, not the C compiler
v5:
- fix missing
AM_CXXFLAGS
for dwrite
v8:
- have
-fno-strict-aliasing
on Windows or fail configure - renamed the flag to LIBCOMCXXFLAGS to show it should be used in C++ code, the fancy C++ helpers are not available there, the code will have to be clean from pointer aliasing with COM objects.
Edited by Steve Lhomme
Merge request reports
Activity
Filter activity
Please register or sign in to reply