mrdudz
ad1579140b
Merge branch 'master' of https://github.com/cc65/cc65
2020-08-26 20:54:13 +02:00
mrdudz
c6adf4364f
make atari testcode compile again, added makefile
2020-08-26 20:53:45 +02:00
Oliver Schmidt
c658acbf85
Avoid cl65 in tests.
...
cl65 creates intermediate files based on the source file name in the source file directory. Calling cl65 in parallel with the same source file causes those intermediate files to get overwritten.
Fixes #1080
2020-08-26 20:39:34 +02:00
mrdudz
4c912a0fbe
make gamate testcode compile again
2020-08-26 15:59:52 +02:00
mrdudz
83cc115112
re-add define for pad bits hw address, which was accidently removed in some refactor commit
2020-08-26 15:51:20 +02:00
mrdudz
e5a1755133
added some ifdefs to make testcode compile for apple2 and atari targets
2020-08-26 15:08:17 +02:00
mrdudz
d21fbed1bb
Merge branch 'master' of https://github.com/cc65/cc65
2020-08-26 13:37:07 +02:00
mrdudz
c216b3534b
fix compilation, fixes issue #1184
2020-08-26 13:36:43 +02:00
Bob Andrews
4cd19711f2
Merge pull request #1219 from acqn/Test
...
Bug #1113 was fixed "long" ago
2020-08-26 11:09:11 +02:00
acqn
b6a4715a38
Added test/ref/pr1220 for testing constant AND/OR code generation.
2020-08-26 08:45:01 +08:00
acqn
d68925c6a8
Bug #1113 was fixed long ago.
2020-08-25 22:34:25 +08:00
Jesse Rosenstock
344aea0669
Add additional test cases for #1209
...
These test cases don't use dynamic labels.
https://github.com/cc65/cc65/issues/1209#issuecomment-678738971
Also update the original test case for consistency:
* Change failure message to just "FAIL", as there is only one failure
* Outdent label definitions
* Clarify description
2020-08-24 19:15:06 +02: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
acqn
c3a6b39945
Made struct assignment less hackish.
2020-08-24 18:02:29 +02:00
acqn
d1995fc81a
Fixed rvalue-ness of cast results.
2020-08-24 17:16:37 +02:00
acqn
63fa9a5a42
Fixed usage of "lvalue-cast" in _scanf implementation.
2020-08-24 17:16:37 +02:00
acqn
911a79796d
Fixed checks and diagnostics on type-casting.
2020-08-24 17:16:37 +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
acqn
0486d28abc
Fixed Issue #327 .
2020-08-22 13:44:18 +02:00
acqn
f289ea6c14
Avoided generating unnecessary true-case labels in logic AND/OR.
2020-08-22 11:10:17 +08:00
acqn
0536f4f9bd
Minor fixes on constant expression checking and comments.
2020-08-21 23:27:41 +02:00
acqn
63256fd15d
Changed negation of signed long stored in unsigned long to unsigned subtraction.
2020-08-21 23:16:17 +02:00
acqn
f59c2a08d9
Added support for changing multiplications with certain negative multipliers into bit-shifts. Only enable certain kinds of signed mul replacements with shift according to the code size factor settings.
2020-08-21 23:16:17 +02:00
acqn
ea7336591c
Removed special-casing code for scaling up. Now it uses the normal multiplying code.
2020-08-21 23:16:17 +02:00
Greg King
75dc234988
Guarded the static_assert macro with a C standards test.
2020-08-21 15:15:19 -04:00
acqn
85ea06687b
Fixed logical AND and logical OR.
2020-08-20 07:52:15 +08:00
acqn
725511131a
Fixed constant expression checks with no-code requirement.
...
Used return-by-value initialization for ExprDesc.
2020-08-20 07:52:11 +08:00
acqn
1abb9da2b2
Moved bug250.c to test/val as it is fixed.
2020-08-26 09:40:32 +08:00
acqn
3ea3887c77
Fixed warnings on const comparison.
...
Warnings on expressions with no effects.
Fixed const ternary.
Fixed ternary with struct/union types as the true/false-branch expressions.
2020-08-20 07:52:06 +08:00
acqn
b15ab348ba
Moved bug250.c from test/misc as it is to be fixed.
2020-08-26 08:23:05 +08:00
acqn
17bbba7327
Added integer boolean type string.
...
No longer set the "expression tested" flag with constant results in comparison.
2020-08-20 07:52:03 +08:00
mrdudz
794adcc512
remove unneeded rule
2020-08-19 22:33:10 +02:00
mrdudz
e6b8f4d715
move/fix bug264.c as suggested in issue #1122
2020-08-19 22:25:18 +02:00
mrdudz
1a92368aed
rename bdiff.c to isequal.c, make it handle different line-endings as equal
2020-08-19 14:50:12 +02:00
Jesse Rosenstock
85e8a6cb9f
Clarify docs that bss is zero-initialized
...
Addresses comment raised in #1202 .
2020-08-19 13:24:15 +02:00
acqn
9fcde120aa
Made function signatures in asm output use the parameter lists from original definitions instead of the composites.
2020-08-19 08:40:19 +02:00
Greg King
36dd82f0e6
Added g_branch() to cc65's code generator.
...
It uses BRA if the platform's CPU has BRA. Else, it generates a JMP.
(Used it in the bitfield sign-extending code.)
2020-08-18 19:11:18 -04: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
Jesse Rosenstock
ff535b8e1a
Treat signed int bit-fields as signed
...
Prior to this PR, `int`, `signed int`, and `unsigned int`
bitfields are all treated as `unsigned int`.
With this PR, `signed int` will be treated as `signed int`,
and the others remain unsigned.
Since `Type` does not distinguish between `int` and `signed int`,
add an extra `int* SignenessSpecified` param to `ParseTypeSpec`
so we can tell these apart for bit-fields and treat plain `int : N`
as `unsigned int : N` since it is more efficient to zero-extend
than sign-extend.
Fixes #1095
2020-08-18 12:23:20 +02:00
Jesse Rosenstock
55cebc7b9e
Move bit-field adjustment to codegen.c
...
Extract functions g_testbitfield and g_extractbitfield from LoadExpr.
This helps prepare for #1192 , since g_extractbitfield will get much
longer and call AddCodeLine.
2020-08-18 10:55:31 +02:00
acqn
56b659c0be
Made char type a distinct type.
2020-08-18 10:48:38 +02:00
acqn
87889df9e9
Fixed type checking in relation operations.
2020-08-18 09:39:43 +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
f206833a20
Alternative fix for Issue #1167 .
2020-08-17 20:31:02 +02:00
acqn
0afa1a9a95
Fixed function signatures in asm output.
...
Improved full type name production.
2020-08-17 20:30:32 +02:00