Skip to content

Commit db800db

Browse files
committed
ci: add asan and msan Linux jobs
ASan is not viral, so it is added to both GCC and Clang. MSan is viral, so it is added to Clang only. Do not add MSan to MacOS job, since it is not supported there.
1 parent 2b757fa commit db800db

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

.github/workflows/ci.yml

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ jobs:
4141
standards: '20'
4242
latest-factors: |
4343
msvc Optimized-Debug
44-
gcc UBSan Coverage
45-
clang UBSan
44+
gcc UBSan ASan Coverage
45+
clang UBSan ASan MSan
4646
apple-clang UBSan ASan
4747
factors: ''
4848
runs-on: |
@@ -76,9 +76,10 @@ jobs:
7676
llvm-root: ../third-party/llvm-project/install
7777
llvm-archive-extension: {{#if (ieq os 'windows') }}7z{{else}}tar.bz2{{/if}}
7878
llvm-archive-filename: {{{ llvm-archive-basename }}}.{{{ llvm-archive-extension }}}
79-
llvm-sanitizer-config: {{#if (or (ne compiler 'clang') (ne compiler 'apple-clang'))}}{{else if ubsan}}Undefined{{else if asan}}Address{{/if}}
80-
mrdocs-ccflags: {{{ ccflags }}} {{#if (and (eq compiler 'gcc') (not asan)) }}-static{{/if}}
81-
mrdocs-cxxflags: {{{ cxxflags }}} {{#if (and (eq compiler 'gcc') (not asan)) }}-static{{/if}}
79+
llvm-sanitizer-config: {{#if (or (ne compiler 'clang') (ne compiler 'apple-clang'))}}{{else if ubsan}}Undefined{{else if asan}}Address{{else if msan}}MemoryWithOrigins{{/if}}
80+
mrdocs-flags: {{#if (and (eq compiler 'gcc') (not asan)) }}-static{{/if}}{{#if (and (eq compiler 'clang') msan) }}-fsanitize-memory-track-origins{{/if}}
81+
mrdocs-ccflags: {{{ ccflags }}} {{{ mrdocs-flags }}}
82+
mrdocs-cxxflags: {{{ cxxflags }}} {{{ mrdocs-flags }}}
8283
mrdocs-package-generators: {{#if (ieq os 'windows') }}7Z ZIP WIX{{else}}TGZ TXZ{{/if}}
8384
mrdocs-release-package-artifact: release-packages-{{{ lowercase os }}}
8485
output-file: matrix.json

0 commit comments

Comments
 (0)