Title: [267358] trunk/Tools
- Revision
- 267358
- Author
- [email protected]
- Date
- 2020-09-21 13:02:25 -0700 (Mon, 21 Sep 2020)
Log Message
Enable AddressSanitizer in C++ std library templates
<https://webkit.org/b/216746>
Reviewed by Darin Adler.
This change also prevents duplicate command-line switches from
being passed to clang since OTHER_CFLAGS is used when compiling
C++ sources.
* sanitizer/asan.xcconfig:
(WK_SANITIZER_OTHER_CPLUSPLUSFLAGS_YES): Add.
- Undefines _LIBCPP_HAS_NO_ASAN macro to enable ASan for C++ std
library templates.
* sanitizer/sanitizer.xcconfig:
(WK_SANITIZER_OTHER_CPLUSPLUSFLAGS_YES): Add.
- Provide placeholder.
(OTHER_CPLUSPLUSFLAGS):
- Switch from WK_SANITIZER_OTHER_CFLAGS_ prefix to
WK_SANITIZER_OTHER_CPLUSPLUSFLAGS_ prefix.
Modified Paths
Diff
Modified: trunk/Tools/ChangeLog (267357 => 267358)
--- trunk/Tools/ChangeLog 2020-09-21 19:51:02 UTC (rev 267357)
+++ trunk/Tools/ChangeLog 2020-09-21 20:02:25 UTC (rev 267358)
@@ -1,3 +1,26 @@
+2020-09-21 David Kilzer <[email protected]>
+
+ Enable AddressSanitizer in C++ std library templates
+ <https://webkit.org/b/216746>
+
+ Reviewed by Darin Adler.
+
+ This change also prevents duplicate command-line switches from
+ being passed to clang since OTHER_CFLAGS is used when compiling
+ C++ sources.
+
+ * sanitizer/asan.xcconfig:
+ (WK_SANITIZER_OTHER_CPLUSPLUSFLAGS_YES): Add.
+ - Undefines _LIBCPP_HAS_NO_ASAN macro to enable ASan for C++ std
+ library templates.
+
+ * sanitizer/sanitizer.xcconfig:
+ (WK_SANITIZER_OTHER_CPLUSPLUSFLAGS_YES): Add.
+ - Provide placeholder.
+ (OTHER_CPLUSPLUSFLAGS):
+ - Switch from WK_SANITIZER_OTHER_CFLAGS_ prefix to
+ WK_SANITIZER_OTHER_CPLUSPLUSFLAGS_ prefix.
+
2020-09-21 Aakash Jain <[email protected]>
Make ews-app robust against config.json issues (follow-up fix)
Modified: trunk/Tools/sanitizer/asan.xcconfig (267357 => 267358)
--- trunk/Tools/sanitizer/asan.xcconfig 2020-09-21 19:51:02 UTC (rev 267357)
+++ trunk/Tools/sanitizer/asan.xcconfig 2020-09-21 20:02:25 UTC (rev 267358)
@@ -5,3 +5,5 @@
ENABLE_ADDRESS_SANITIZER_NO = YES;
WK_ENABLE_SANITIZER = $(ENABLE_ADDRESS_SANITIZER);
+
+WK_SANITIZER_OTHER_CPLUSPLUSFLAGS_YES = $(inherited) -U_LIBCPP_HAS_NO_ASAN;
Modified: trunk/Tools/sanitizer/sanitizer.xcconfig (267357 => 267358)
--- trunk/Tools/sanitizer/sanitizer.xcconfig 2020-09-21 19:51:02 UTC (rev 267357)
+++ trunk/Tools/sanitizer/sanitizer.xcconfig 2020-09-21 20:02:25 UTC (rev 267358)
@@ -4,9 +4,10 @@
GCC_OPTIMIZATION_LEVEL_Release = 1;
WK_SANITIZER_OTHER_CFLAGS_YES = -fno-omit-frame-pointer -g;
+WK_SANITIZER_OTHER_CPLUSPLUSFLAGS_YES = ;
OTHER_CFLAGS = $(inherited) $(WK_SANITIZER_OTHER_CFLAGS_$(WK_ENABLE_SANITIZER));
-OTHER_CPLUSPLUSFLAGS = $(inherited) $(WK_SANITIZER_OTHER_CFLAGS_$(WK_ENABLE_SANITIZER));
+OTHER_CPLUSPLUSFLAGS = $(inherited) $(WK_SANITIZER_OTHER_CPLUSPLUSFLAGS_$(WK_ENABLE_SANITIZER));
// Workaround for rdar://problem/49498092
OTHER_LDFLAGS = $(inherited) $(WK_LDFLAGS_SANITIZER_$(WK_ENABLE_SANITIZER));
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes