1
0
mirror of https://github.com/cc65/cc65.git synced 2026-04-21 09:17:52 +00:00
Commit Graph

8651 Commits

Author SHA1 Message Date
mrdudz 41dbd31b02 fix makefile, remove the unneeded .cfg again. oops :) 2020-08-27 00:04:34 +02:00
mrdudz c1a514c0f8 added test related to issue #1201 2020-08-26 23:20:28 +02:00
mrdudz 39a3de3119 made geoslib testcode compile again, added the required linker config and a Makefile 2020-08-26 22:47:47 +02:00
mrdudz bf5384a712 some more refactoring of Makefiles, preparing for CI 2020-08-26 22:46:45 +02:00
acqn bb9c203222 Fixed integer promotion of unary operations. 2020-08-26 22:17:16 +02:00
acqn 8d225c32b1 Fixed checks on assignment to incomplete types. 2020-08-26 22:14:51 +02:00
acqn 43cb092a68 Fixed CHECK failures on certain usage of incomplete enums. 2020-08-26 22:14:51 +02:00
acqn 1957dc7a5c Disallowed arrays of incomplete types.
Fixed diagnostics on incomplete local arrays.
2020-08-26 22:14:51 +02:00
acqn f5b1b69376 Forbid struct/union fields of incomplete types. 2020-08-26 22:14:51 +02:00
mrdudz bee11ec11b Merge branch 'master' of https://github.com/cc65/cc65 2020-08-26 21:28:32 +02:00
mrdudz 8649859bc5 added/updated Makefiles, preparing for CI (later) 2020-08-26 21:28:19 +02:00
Oliver Schmidt b0d3b19a6a The bug1209 test fails at link stage. 2020-08-26 21:01:02 +02:00
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 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 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
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