Skip to content

Commit cdebb42

Browse files
Populate suppressions.txt, fix test_capi fails
1 parent 46f0582 commit cdebb42

File tree

3 files changed

+23
-6
lines changed

3 files changed

+23
-6
lines changed

.github/workflows/reusable-san.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ jobs:
6161
|| ''
6262
}}.txt handle_segv=0" >> "$GITHUB_ENV"
6363
else
64-
echo "UBSAN_OPTIONS=${SAN_LOG_OPTION} halt_on_error=1 suppressions=${GITHUB_WORKSPACE}/Tools/ubsan/suppressions.txt" >> "$GITHUB_ENV"
64+
echo "UBSAN_OPTIONS=${SAN_LOG_OPTION} halt_on_error=1 handle_segv=0 handle_sigfpe=0 handle_sigbus=0 suppressions=${GITHUB_WORKSPACE}/Tools/ubsan/suppressions.txt" >> "$GITHUB_ENV"
6565
fi
6666
echo "CC=clang" >> "$GITHUB_ENV"
6767
echo "CXX=clang++" >> "$GITHUB_ENV"

Tools/build/compute-changes.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -123,11 +123,7 @@ class Outputs:
123123

124124
def compute_changes() -> None:
125125
target_ref, head_ref = git_refs()
126-
if True:
127-
outputs = Outputs(
128-
run_ubuntu=True,
129-
)
130-
elif os.environ.get("GITHUB_EVENT_NAME", "") == "pull_request":
126+
if os.environ.get("GITHUB_EVENT_NAME", "") == "pull_request":
131127
# Getting changed files only makes sense on a pull request
132128
files = get_changed_files(target_ref, head_ref)
133129
outputs = process_changed_files(files)

Tools/ubsan/suppressions.txt

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,23 @@
1+
# This file contains suppressions for the UndefinedBehaviour sanitizer.
2+
#
3+
# When adding a suppression, include a comment referencing a GitHub issue
4+
# that describes how to reproduce the race and includes the relevant UBSan
5+
# output.
6+
17
null:Objects/object.c
28
bool:Objects/memoryobject.c
9+
10+
# Modules/binascii.c:1243:42: runtime error: left shift of 128 by 24 places cannot be represented in type 'int'
11+
shift:Modules/binascii.c
12+
13+
# Modules/_ctypes/cfield.c:644:1: runtime error: left shift of 1 by 63 places cannot be represented in type 'int64_t' (aka 'long')
14+
shift:Modules/_ctypes/cfield.c
15+
16+
# Modules/_zstd/decompressor.c:598:56: runtime error: applying non-zero offset 18446744073709551615 to null pointer
17+
pointer-overflow:Modules/_zstd/decompressor.c
18+
19+
# Modules/_io/stringio.c:350:24: runtime error: addition of unsigned offset to 0x7fd01ec25850 overflowed to 0x7fd01ec2584c
20+
pointer-overflow:Modules/_io/stringio.c
21+
22+
# Objects/bytesobject.c:1190:25: runtime error: applying zero offset to null pointer
23+
pointer-overflow:Objects/bytesobject.c

0 commit comments

Comments
 (0)