1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-23 19:29:37 +00:00
Commit Graph

10118 Commits

Author SHA1 Message Date
acqn
0063f73f8a Fixed __FILE__ and __LINE__ macros for preprocessor. 2022-07-24 23:19:05 +08:00
Bob Andrews
8605393953
Merge pull request #1834 from acqn/PPFix
[cc65] Minor improvements, fixes and cleanups with the preprocessor
2022-08-21 19:18:46 +02:00
Bob Andrews
f838ba7341
Merge pull request #1833 from acqn/TokenizerFix
[cc65] Tokenizer fixes
2022-08-21 17:45:38 +02:00
acqn
47ee543fe0 Added testcase for some part of PR #1833. 2022-08-21 00:11:19 +08:00
Bob Andrews
12b9b10355
Merge pull request #1832 from acqn/PPDefineFix
[cc65] Preprocessor directive #define fixes
2022-08-20 14:27:25 +02:00
Bob Andrews
03421694b2
Merge pull request #1817 from acqn/PPFix
[cc65] More preprocessor fixes
2022-08-19 21:37:16 +02:00
Bob Andrews
98491d7c92
Merge pull request #1831 from acqn/DeclFix
[cc65] Fixed issues with forward declaration of enums and global static variables put on zeropage
2022-08-19 20:58:28 +02:00
acqn
3fbefdef45 Fixed warning on forward declaration of enums.
Fixed the issue that global static variables put on zeropage were missing optimization.
2022-08-19 18:48:52 +08:00
acqn
9565f41381 Improved Diagnostic with #include. 2022-08-19 13:27:56 +08:00
acqn
5d5bd472c6 Removed extra whitespace at line ends in preprocess-only output (-E).
Increased threshold from 5 to 7 for skipped newlines with #line directives in preprocess-only output (-E).
2022-08-22 00:27:21 +08:00
acqn
79f97e7714 Reused code more for macros in preprocessing directives. 2022-08-22 00:24:28 +08:00
acqn
cf7558add3 Added check for ## at either end of macro expansion. 2022-08-18 23:16:29 +08:00
acqn
b93f9fbba4 Updated documents about the predefined macros. 2022-08-18 22:51:23 +08:00
acqn
47d5e74a6e Modified way to keep undefined macro handling more consistent. 2022-08-18 22:51:23 +08:00
Bob Andrews
b8211a2921
Update Contributing.md 2022-08-17 21:42:42 +02:00
acqn
624e5025b0 Fixed parsing wide char constants. 2022-08-17 22:28:00 +08:00
acqn
5cca1e8b1d Fixed parsing numeric constants. 2022-08-11 10:55:16 +08:00
Bob Andrews
623f047397
Merge pull request #1509 from mrdudz/rremd
C64 Retro Replay EMD driver
2022-08-11 01:11:16 +02:00
Bob Andrews
38c4449ab1
Merge pull request #1826 from alejandro-colomar/master
Make NULL conform to POSIX
2022-08-11 01:10:16 +02:00
mrdudz
c1fd3218df add test related to pr #1799 2022-08-11 00:59:09 +02:00
mrdudz
f942c629d7 simple test related to issue #1655 2022-08-11 00:04:36 +02:00
Bob Andrews
ec310fceb8
Merge pull request #1825 from ReallyNiceGuy/master
Revert: Parse file included inside a macro at definition time
2022-08-11 00:03:12 +02:00
Alejandro Colomar
f14e793197 Make NULL conform to POSIX
POSIX.1-2008 tightened the definition of NULL to be 0 cast to the
type 'void *'.

Defining NULL as 0 is problematic, because it requires users to
cast NULL to a pointer type before passing it to variadic
functions.  Using POSIX's definition is safer, because NULL can be
used in all contexts without a cast, due to the alignment of
'void *' and 'char *' being the same.  It also helps the compiler
be able to detect when NULL is being used in an integer context.

Link: <http://ewontfix.com/11/>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
2022-08-10 12:56:23 +02:00
Bob Andrews
bdcc5ba549
Merge pull request #1821 from ZeroByteOrg/x16_waitvsync
CX16 waitvsync uses Kernal API to retreive jiffies
2022-08-09 19:02:15 +02:00
Bob Andrews
e30e233064
Merge pull request #1829 from acqn/VoidPtrFix
[cc65] Fixed superfluous warning on pointer types comparing a non-void pointer to a void pointer.
2022-08-09 14:29:56 +02:00
acqn
78e80eb942 Fixed superfluous warning on pointer types comparing a non-void pointer to a void pointer. 2022-08-09 13:13:33 +08:00
Bob Andrews
0c8366c1e9
Merge pull request #1828 from ZeroByteOrg/x16_ym
Fixed YM2151 struct to match HW behavior
2022-08-09 00:50:08 +02:00
ZeroByteOrg
5608453aea Fixed YM2151 struct to match HW behavior 2022-08-08 16:16:37 -05:00
ZeroByteOrg
582e43931d import RDTIM symbol instead of hard-wiring it here 2022-08-08 15:21:30 -05:00
ZeroByteOrg
9b3b652fa5 Switched to using tmp1 instead of self-mod to store the jiffies value 2022-08-08 15:17:28 -05:00
Marco Aurelio da Costa
71a9ed04a2 Revert: Parse file included inside a macro at definition time
The reverted change broke too many use cases where users
where expecting the compiler quirky behavior to be the correct
behavior.

A better solution is needed for the quirk which does not break
current usage.
2022-08-07 11:24:47 -03:00
acqn
4bb4f033ea Fixed the bug that C keywords were not simply recognized as identifiers in preprocessing. 2022-08-07 16:14:45 +08:00
acqn
a3a5fbe809 Disallowed 'defined' as a macro name. 2022-08-07 13:56:47 +08:00
acqn
7971eec3cc Fixed parentheses handling when a function-like macro name itself is used as an macro argument. 2022-08-07 12:45:48 +08:00
acqn
7a139a800e Added # and ## as punctuators recognized by the tokenizer.
Reorganized the token enum.
2022-08-06 18:45:49 +08:00
acqn
ae811baaf1 Fixed the bug that redefined macros could co-exist but not all be undefined with a single #undef. 2022-08-06 18:21:42 +08:00
acqn
0a051a4dee Unsupported #pragma within argument lists of function-like macro invocation. 2022-08-06 16:56:28 +08:00
ZeroByteOrg
78870219a4 CX16 waitvsync uses Kernal API to retreive jiffies 2022-08-05 17:44:18 -05:00
acqn
251e984ba8 Fixed error recovery with preprocessing directives failures. 2022-08-05 14:03:51 +08:00
Bob Andrews
4de40a20cb
Merge pull request #1820 from polluks2/patch-5
Shorter isascii
2022-08-04 00:43:10 +02:00
polluks2
7a93d3c707
Shorter isascii 2022-08-04 00:25:04 +02:00
mrdudz
fb8de287be test related to pr #1800 2022-07-28 01:50:54 +02:00
Bob Andrews
2c742ffc1c
Merge pull request #1800 from acqn/PPFix
[cc65] Preprocessor fixes
2022-07-28 01:48:41 +02:00
Bob Andrews
15756cc730
Update Contributing.md 2022-07-28 00:29:05 +02:00
Bob Andrews
9ab8026dbb
Merge pull request #1813 from IrgendwerA8/CharmapFixDocUpdate
Updated documentation while char-mapping is fixed.
2022-07-27 17:58:57 +02:00
IrgendwerA8
b3015ef731 Updated documentation while char-mapping is fixed. 2022-07-27 13:54:00 +02:00
mrdudz
5164b88a27 test was moved to test/val 2022-07-26 17:21:33 +02:00
Bob Andrews
a41b76795a
Merge pull request #1807 from acqn/CharmapFix
[cc65] Fixed #pragma charmap for string literals
2022-07-26 17:19:58 +02:00
acqn
f8d08b1e1a More post-C99 predefined macros. 2022-07-26 21:40:19 +08:00
acqn
2f357ba9b2 Preprocessor directives can now appear in the argument list of function-like macro calls.
#pragma PP-tokens can now be macro replaced.
#include header names directly enclosed in <> are free of macro replacement.
Preprocess-only mode (-E) now outputs with #line as source info.
Moved testcases for #760 and #1357.
Added testcase for #1643.
2022-07-26 21:10:38 +08:00