Fix build in MODE=dbg

This commit is contained in:
Justine Tunney 2023-11-13 15:13:45 -08:00
parent 751d20d98d
commit 0283f2772c
No known key found for this signature in database
GPG key ID: BE714B4575D6E328
3 changed files with 10 additions and 10 deletions

View file

@ -93,7 +93,7 @@ struct loaded {
char *base; char *base;
char *entry; char *entry;
Elf64_Ehdr eh; Elf64_Ehdr eh;
Elf64_Phdr ph[32]; Elf64_Phdr ph[30];
}; };
static struct { static struct {

View file

@ -118,7 +118,7 @@ TEST(sem_close, withUnnamedSemaphore_isUndefinedBehavior) {
SPAWN(fork); SPAWN(fork);
IgnoreStderr(); IgnoreStderr();
sem_close(&sem); sem_close(&sem);
TERMS(SIGABRT); // see __assert_fail TERMS(SIGILL); // see __assert_fail
ASSERT_SYS(0, 0, sem_destroy(&sem)); ASSERT_SYS(0, 0, sem_destroy(&sem));
} }

View file

@ -47,48 +47,48 @@ TEST(sem_post, afterDestroyed_isUndefinedBehavior) {
if (!IsModeDbg()) return; if (!IsModeDbg()) return;
sem_t sem; sem_t sem;
SPAWN(fork); SPAWN(fork);
signal(SIGABRT, SIG_DFL); signal(SIGILL, SIG_DFL);
ASSERT_SYS(0, 0, sem_init(&sem, 0, 0)); ASSERT_SYS(0, 0, sem_init(&sem, 0, 0));
ASSERT_SYS(0, 0, sem_destroy(&sem)); ASSERT_SYS(0, 0, sem_destroy(&sem));
IgnoreStderr(); IgnoreStderr();
sem_post(&sem); sem_post(&sem);
TERMS(SIGABRT); TERMS(SIGILL);
} }
TEST(sem_trywait, afterDestroyed_isUndefinedBehavior) { TEST(sem_trywait, afterDestroyed_isUndefinedBehavior) {
if (!IsModeDbg()) return; if (!IsModeDbg()) return;
sem_t sem; sem_t sem;
SPAWN(fork); SPAWN(fork);
signal(SIGABRT, SIG_DFL); signal(SIGILL, SIG_DFL);
ASSERT_SYS(0, 0, sem_init(&sem, 0, 0)); ASSERT_SYS(0, 0, sem_init(&sem, 0, 0));
ASSERT_SYS(0, 0, sem_destroy(&sem)); ASSERT_SYS(0, 0, sem_destroy(&sem));
IgnoreStderr(); IgnoreStderr();
sem_trywait(&sem); sem_trywait(&sem);
TERMS(SIGABRT); TERMS(SIGILL);
} }
TEST(sem_wait, afterDestroyed_isUndefinedBehavior) { TEST(sem_wait, afterDestroyed_isUndefinedBehavior) {
if (!IsModeDbg()) return; if (!IsModeDbg()) return;
sem_t sem; sem_t sem;
SPAWN(fork); SPAWN(fork);
signal(SIGABRT, SIG_DFL); signal(SIGILL, SIG_DFL);
ASSERT_SYS(0, 0, sem_init(&sem, 0, 0)); ASSERT_SYS(0, 0, sem_init(&sem, 0, 0));
ASSERT_SYS(0, 0, sem_destroy(&sem)); ASSERT_SYS(0, 0, sem_destroy(&sem));
IgnoreStderr(); IgnoreStderr();
sem_wait(&sem); sem_wait(&sem);
TERMS(SIGABRT); TERMS(SIGILL);
} }
TEST(sem_timedwait, afterDestroyed_isUndefinedBehavior) { TEST(sem_timedwait, afterDestroyed_isUndefinedBehavior) {
if (!IsModeDbg()) return; if (!IsModeDbg()) return;
sem_t sem; sem_t sem;
SPAWN(fork); SPAWN(fork);
signal(SIGABRT, SIG_DFL); signal(SIGILL, SIG_DFL);
ASSERT_SYS(0, 0, sem_init(&sem, 0, 0)); ASSERT_SYS(0, 0, sem_init(&sem, 0, 0));
ASSERT_SYS(0, 0, sem_destroy(&sem)); ASSERT_SYS(0, 0, sem_destroy(&sem));
IgnoreStderr(); IgnoreStderr();
sem_timedwait(&sem, 0); sem_timedwait(&sem, 0);
TERMS(SIGABRT); TERMS(SIGILL);
} }
void *Worker(void *arg) { void *Worker(void *arg) {