Skip to content

Commit

Permalink
Fix 4 of the last 6 remaining macOS-arm64 test/CI failures (#4330)
Browse files Browse the repository at this point in the history
  • Loading branch information
kinke authored Feb 26, 2023
1 parent 17c9814 commit 9f6b89b
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 9 deletions.
3 changes: 3 additions & 0 deletions .cirrus.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,9 @@ common_steps_template: &COMMON_STEPS_TEMPLATE
rm $CIRRUS_WORKING_DIR/tests/sanitizers/fuzz_basic.d
# the following 2 have regressed with LLVM 13
rm $CIRRUS_WORKING_DIR/tests/sanitizers/msan_{noerror,uninitialized}.d
elif [[ "$CI_OS-$CI_ARCH" == "osx-arm64" ]]; then
# FIXME: LeakSanitizer: CHECK failed: sanitizer_allocator_secondary.h:177 "((IsAligned(reinterpret_cast<uptr>(p), page_size_))) != (0)"
rm $CIRRUS_WORKING_DIR/tests/sanitizers/lsan_memleak.d
fi
python3 runlit.py -v -j $PARALLELISM .
run_dmd_testsuite_script: |
Expand Down
2 changes: 1 addition & 1 deletion tests/dmd/fail_compilation/test15703.d
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/*
/* DISABLED: LDC_not_x86 // because of -m32
REQUIRED_ARGS: -m32
TEST_OUTPUT:
---
Expand Down
3 changes: 3 additions & 0 deletions tests/dmd/runnable/ldc_extern_weak.d
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@
// provided. extern_weak not really needed on OS X though.
// REQUIRED_ARGS(osx): -L-undefined -Ldynamic_lookup

// the linker on macOS-arm64 emits a warning
// TRANSFORM_OUTPUT(osx): remove_lines("warning: -undefined dynamic_lookup may not work with chained fixups")

extern __gshared pragma(LDC_extern_weak) int nonExistent;

bool doesNonExistentExist() {
Expand Down
28 changes: 20 additions & 8 deletions tests/dmd/runnable_cxx/test22898.d
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,26 @@ import core.stdc.config;

extern(C++):

version (AArch64) version = UnsignedChar;
version (ARM) version = UnsignedChar;
version (RISCV32) version = UnsignedChar;
version (RISCV64) version = UnsignedChar;
version (PPC) version = UnsignedChar;
version (PPC64) version = UnsignedChar;
version (S390) version = UnsignedChar;
version (SystemZ) version = UnsignedChar;
version (OSX)
version = Darwin;
else version (iOS)
version = Darwin;
else version (TVOS)
version = Darwin;
else version (WatchOS)
version = Darwin;

version (Darwin) { /* signed on ARM too */ } else
{
version (AArch64) version = UnsignedChar;
version (ARM) version = UnsignedChar;
version (RISCV32) version = UnsignedChar;
version (RISCV64) version = UnsignedChar;
version (PPC) version = UnsignedChar;
version (PPC64) version = UnsignedChar;
version (S390) version = UnsignedChar;
version (SystemZ) version = UnsignedChar;
}

version (UnsignedChar)
enum __c_char : ubyte;
Expand Down

0 comments on commit 9f6b89b

Please sign in to comment.