Greg King
2ffb6af5d9
Simplified a bug test. Gave it an appropriate description,
2020-11-17 08:15:34 -05:00
Jesse Rosenstock
68cb15d0f9
Add test case for #1320
...
From https://github.com/cc65/cc65/issues/1320#issuecomment-726866015
2020-11-17 09:45:02 +01:00
Jesse Rosenstock
81550ca1ee
CS_MergeLabels: Keep labels referenced by data
...
Partial fix for ICE in #1211 . This may fix enough to allow #1049 to be
fixed.
When merging labels, keep the first label with a ref that has no JumpTo;
this is a data segment label, used by computed gotos.
The real fix is to track and rewrite labels in data, but this is more
involved.
2020-10-08 12:11:03 +02:00
mrdudz
5ba9d28488
test related to pr #1189
2020-09-24 16:16:16 +02:00
Jesse Rosenstock
4e4e4c2d21
Allow char bit-fields
...
These are not required to be supported (only int, signed int, and
unsigned int are required), but most compilers support it.
https://port70.net/~nsz/c/c89/c89-draft.html#3.5.2.1
https://port70.net/~nsz/c/c89/c89-draft.html#A.6.5.8
For consistency with other integral types, plain `char` bit-fields
are unsigned, regardless of the `--signed-chars` option.
Fixes #1047
2020-09-08 14:24:04 +02:00
acqn
d68925c6a8
Bug #1113 was fixed long ago.
2020-08-25 22:34:25 +08:00
Jesse Rosenstock
d38e5858f0
Add tests for #1211
...
CL_MoveRefs: Add CHECK (E->JumpTo != NULL) to make failure clearer.
2020-08-24 18:10:22 +02:00
Jesse Rosenstock
4b7cd491e3
Move #1209 test from err/ to misc/
...
misc/ is the correct place for tests that should compile
but do not.
Revert err/Makefile changes from #1210 .
2020-08-24 18:07:31 +02:00
Jesse Rosenstock
23621f3299
Add test case for #1209
...
Change err/ tests to use cl65 and .prg instead of cc65 and .s
since this test only fails at the link stage.
2020-08-22 15:27:49 +02:00
mrdudz
e6b8f4d715
move/fix bug264.c as suggested in issue #1122
2020-08-19 22:25:18 +02:00
mrdudz
0690a12ad2
change "the cc65 authors" to "The cc65 Authors" as per jmrs request
2020-08-18 22:41:42 +02:00
mrdudz
0c22d5011e
added test related to pr #1190
2020-08-18 17:58:29 +02:00
mrdudz
ab89c168de
replace "Copyright 2020 Google LLC" by "Copyright 2020 the cc65 authors"
2020-08-18 17:47:35 +02:00
mrdudz
2663561c62
added test related to pr #1135
2020-08-18 00:41:35 +02:00
mrdudz
6d8860b9de
added test related to issue #1145
2020-08-18 00:41:07 +02:00
mrdudz
cf41fccc0a
added test related to issue #1143
2020-08-18 00:40:29 +02:00
acqn
8b8561161c
Moved #1098 bug tests from test/misc to test/err as they are fixed now.
2020-08-12 15:02:43 +02:00
Jesse Rosenstock
3df6c383c0
Add support for static_assert
...
Add C11's _Static_assert and static_assert macro.
This is like #error, but is handled at a later stage
of translation, so it is possible to check sizes of
types, values of enums, etc.
https://en.cppreference.com/w/c/language/_Static_assert
https://port70.net/~nsz/c/c11/n1570.html#6.7.10
2020-07-30 19:17:11 +02:00
Jesse Rosenstock
aaa0cf5448
Add err tests for bitfield width errors
...
! ../../bin/cc65 -o ../../testwrk/err/bitfield-named-zero-width.s bitfield-named-zero-width.c
bitfield-named-zero-width.c(27): Error: Zero width for named bit-field
! ../../bin/cc65 -o ../../testwrk/err/bitfield-negative-width.s bitfield-negative-width.c
bitfield-negative-width.c(26): Error: Negative width in bit-field
! ../../bin/cc65 -o ../../testwrk/err/bitfield-too-wide.s bitfield-too-wide.c
bitfield-too-wide.c(26): Error: Width of bit-field exceeds its type
2020-07-30 08:10:38 +02:00
acqn
35e1efc7f2
Moved misc/bug1048 as it is already correctly rejected by the compiler.
2020-07-28 23:26:25 +02:00
Jesse Rosenstock
c272c73686
Add err test for char bit-fields #1047
2020-07-28 22:03:01 +02:00
Jesse Rosenstock
04d16b3740
Make $WORKDIR for tests/err
...
Without this, if there is a test that can compile,
it will still fail because the WORKDIR does not exist:
```
pass.c(1): Fatal: Cannot open output file '../../testwrk/err/pass.s': No such file or directory
```
2020-07-28 21:59:12 +02:00
mrdudz
98b2d43c2b
added tests related to pr #1110
2020-07-22 15:52:04 +02:00
mrdudz
a2bbb6f1be
added regression test related to bug #1001
2020-01-25 20:56:52 +01:00
Christian Groessler
7445550831
remote TABs in doc/ and test/
2019-02-12 22:50:49 +01:00
Piotr Fusik
8e35a82c91
Fix regression of #pragma bss-name
...
Closes #409
2017-03-21 22:35:25 +01:00
Oliver Schmidt
0851e3d694
Allow to control test Makefile output via QUIET (like libsrc).
2017-03-20 11:22:04 +01:00
Oliver Schmidt
66634ef683
Cleaned up test Makefiles.
2017-03-19 17:48:44 +01:00
Greg King
750a527100
Made C's sizeof operator work with initialized void variables.
...
Added regression tests that check cc65's handling of void variables.
2017-03-12 14:41:32 -04:00
Piotr Fusik
05d1b8072b
Add regression tests for duplicate globals with different linkage.
2017-03-09 21:18:48 +01:00
Piotr Fusik
6c3873316b
Add regression tests for duplicate global/static variables detected by the compiler.
2017-03-09 20:49:42 +01:00
Oliver Schmidt
a85ac88fca
Merge pull request #197 from greg-king5/static
...
Handle almost-duplicate C declarations that have different linkages.
2015-08-15 06:53:40 +02:00
Greg King
6ed3d055cb
Removed redundant attempts to build uncompilable files.
2015-08-13 17:47:02 -04:00
Greg King
1baecf4a15
Added regression tests of diagnostics for conflicts between extern/public and static declarations.
2015-08-13 03:39:35 -04:00
Oliver Schmidt
d3eebc8fcf
Merge branch 'pointer' of https://github.com/mrdudz/cc65 into mrdudz-pointer
2015-07-15 12:24:09 +02:00
Oliver Schmidt
50b0536222
Ignore return values only with CMD.EXE MkII.
...
CMD.EXE considers file deletion commands not able to delete anything as there's nothing to delete as failed. Of course we don't want to bail out of the Makefile because of missing files to delete. Therefore we ignore the return values with '-'. This change limits this workaround to CMD.EXE.
2015-07-11 00:01:39 +02:00
Oliver Schmidt
992f0f03c5
Ignore return values only with CMD.EXE.
...
CMD.EXE considers file deletion commands not able to delete anything as there's nothing to delete as failed. Of course we don't want to bail out of the Makefile because of missing files to delete. Therefore we ignore the return values with '-'. This change limits this workaround to CMD.EXE.
2015-07-10 22:39:53 +02:00
mrdudz
12a3e6841c
tests for illegal pointer operations that must always fail
2015-07-10 18:38:54 +02:00
Oliver Schmidt
5a7ba692f5
Avoid "*** Recursive variable `RM' references itself (eventually)."
2015-06-27 00:33:24 +02:00
Oliver Schmidt
9bd11f161f
Made test Makefiles work with CMD.EXE
2015-06-27 00:03:45 +02:00
Oliver Schmidt
54cfd2e2a1
Avoid wrong error.
2015-06-26 23:36:14 +02:00
Greg King
244eeedcfc
Shortenned the code that creates the TESTS make variable.
...
And, fixed the variable-substitution that creates the CC65 optimization option.
2014-12-18 14:17:56 -05:00
Greg King
e414e89b64
Use simply-defined make variables.
2014-12-17 17:44:39 -05:00
Greg King
d9c8c1de45
Create the makefile variable REFS in the same way that TESTS is made.
2014-12-17 16:30:09 -05:00
Greg King
ad56b6abe9
Made the makefiles' clean target remove the object files from the source directory.
2014-12-17 15:59:29 -05:00
mrdudz
92ed5fd64b
scan sources just once
2014-11-26 19:32:54 +01:00
mrdudz
3e8ae54759
actually use optimization switches
2014-11-26 01:38:30 +01:00
mrdudz
60026925ad
use testwrk for binaries, and generated reference data
2014-11-25 13:47:31 +01:00
mrdudz
9c03326360
use 'testwrk' dir for bdiff
2014-11-25 12:56:45 +01:00
mrdudz
8a66605d5e
added some windows/cmd.exe stuff
2014-11-23 12:18:19 +01:00