diff options
| author | nsfisis <nsfisis@gmail.com> | 2025-08-30 00:39:45 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2025-08-30 00:39:45 +0900 |
| commit | 194e87a88290a4b3025436709e1f3064aecd00cd (patch) | |
| tree | 17b7a78ed9f0cb767b9caf8b4f98b5dc1b4c6055 /tests | |
| parent | f89dab5c45395f432d9b25abfba4ecbad0e3ce03 (diff) | |
| download | ducc-194e87a88290a4b3025436709e1f3064aecd00cd.tar.gz ducc-194e87a88290a4b3025436709e1f3064aecd00cd.tar.zst ducc-194e87a88290a4b3025436709e1f3064aecd00cd.zip | |
feat: check invalid #elif* and #endif
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/106.sh | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/tests/106.sh b/tests/106.sh new file mode 100644 index 0000000..2a61a33 --- /dev/null +++ b/tests/106.sh @@ -0,0 +1,50 @@ +cat <<'EOF' > expected +main.c:1: unexpected '#elif'; no corresponding '#if'* +EOF +test_compile_error <<'EOF' +#elif +#endif + +int main() {} +EOF + +cat <<'EOF' > expected +main.c:1: unexpected '#endif'; no corresponding '#if'* +EOF +test_compile_error <<'EOF' +#endif + +int main() {} +EOF + +cat <<'EOF' > expected +main.c:1: unexpected '#else'; no corresponding '#if'* +EOF +test_compile_error <<'EOF' +#else +#endif + +int main() {} +EOF + +cat <<'EOF' > expected +main.c:4: expected '#endif', but got '<eof>' +EOF +test_compile_error <<'EOF' +#if 1 + +int main() {} +EOF + +cat <<'EOF' > a.h +#if 1 +EOF +cat <<'EOF' > expected +./a.h:2: expected '#endif', but got '<eof>' +EOF +test_compile_error <<'EOF' +#include "a.h" +#endif + +int main() {} +EOF |
