1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-28 22:30:12 +00:00
Commit Graph

1459 Commits

Author SHA1 Message Date
cuz
98e9934b89 Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@3419 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-25 22:43:28 +00:00
cuz
25dd95438f No output when using wstrip
git-svn-id: svn://svn.cc65.org/cc65/trunk@3418 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-25 22:27:39 +00:00
cuz
6b03c250c2 Add the replacement startup file wildargv.obj to the library
git-svn-id: svn://svn.cc65.org/cc65/trunk@3415 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-25 14:04:30 +00:00
cuz
8a6fdb8562 Output the help text to stdout
git-svn-id: svn://svn.cc65.org/cc65/trunk@3414 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-24 20:08:41 +00:00
cuz
137b66ac97 Added the INIT segment
git-svn-id: svn://svn.cc65.org/cc65/trunk@3413 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-24 10:52:07 +00:00
cuz
a54556f9f2 Cheap local symbol in a macro .local statement were broken
git-svn-id: svn://svn.cc65.org/cc65/trunk@3412 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-22 20:09:29 +00:00
cuz
6e55cd6fb3 Added extensions for new loadable modules
git-svn-id: svn://svn.cc65.org/cc65/trunk@3411 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-20 09:00:51 +00:00
cuz
bc4b71f565 Allow to remap the character with code zero.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3410 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-15 12:13:30 +00:00
cuz
bf9af68173 Fixed a bug and replaced tabs by spaces
git-svn-id: svn://svn.cc65.org/cc65/trunk@3409 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-11 13:02:20 +00:00
cuz
46cb3bb2e8 Move the constructor tables into the INIT segment
git-svn-id: svn://svn.cc65.org/cc65/trunk@3403 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-02-26 09:06:12 +00:00
cuz
34017fb89a Added the new INIT segment to all configs and adjusted formatting.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3402 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-02-25 07:52:50 +00:00
cuz
531320e242 Add creation time in the header
git-svn-id: svn://svn.cc65.org/cc65/trunk@3390 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-02-17 17:37:17 +00:00
cuz
0eec7d8a87 More comment handling
git-svn-id: svn://svn.cc65.org/cc65/trunk@3389 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-02-17 17:26:16 +00:00
cuz
e814c484c3 Added new comment feature
git-svn-id: svn://svn.cc65.org/cc65/trunk@3388 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-02-16 23:30:05 +00:00
cuz
00b644ad18 Suppress wine debug output
git-svn-id: svn://svn.cc65.org/cc65/trunk@3387 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-02-14 11:01:20 +00:00
cuz
26ae91efff Allow numeric OS types in the config file
git-svn-id: svn://svn.cc65.org/cc65/trunk@3386 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-02-14 10:36:23 +00:00
cuz
e8abdea87c In case of memory area overflows, generate a short mapfile if one was
requested. This eases the task of rearranging segments when such an
overflow occurs.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3373 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-23 11:19:26 +00:00
cuz
27b5721cf6 Allow a unary +
git-svn-id: svn://svn.cc65.org/cc65/trunk@3371 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-21 12:57:41 +00:00
cuz
c68a75ceb4 Fixed zeropage segment declaration (syntax had changed some time ago).
Added support for exports.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3370 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-21 10:35:50 +00:00
cuz
2d623f00cc Better error message when a file is not found in the FILES section.
Better error messages in case of a wrong section order in the config file.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3369 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-20 07:55:38 +00:00
cuz
5b0ad76cd9 Recoded the last change
git-svn-id: svn://svn.cc65.org/cc65/trunk@3368 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-14 18:52:30 +00:00
cuz
8cd583d591 Fixed a bug (Report from Greg King)
git-svn-id: svn://svn.cc65.org/cc65/trunk@3367 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-14 18:40:33 +00:00
cuz
e06d9d0d84 Fixed a bug (hopefully).
The ArrayRef() does really need a rewrite, now since we have better
expression info.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3364 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-09 21:17:19 +00:00
cuz
6a1ff58499 Don't treat K&R functions as variadic. The standard (at least the C99 one)
says that passing an invalid number of parameters causes undefined behaviour,
so we don't need to handle that case.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3363 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-09 21:16:32 +00:00
cuz
5c1bc2d740 Output warnings for implicit int types if std >= C99.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3361 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-09 18:03:55 +00:00
cuz
9cd0b7705c Fixed a bug: If all output data was discarded (by using file = "" in the
linker config), CheckExports was never called, which in turn meant that
the list of all exports was never built. This caused a crash later when
the linker tried to generate a map file. The solution is to separate the
creation of the exports list and the check for unresolved imports.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3360 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-09 13:16:51 +00:00
cuz
a456e503e4 More CfgName issues.
Use CfgError instead of calling Error directly.
Use dynamically allocated string buffers in the CfgError and CfgWarning
functions.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3359 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 21:38:17 +00:00
cuz
8559581d9f Fixed several places were CfgName was used directly instead of calling
CfgGetName(). The former may be NULL, while the latter maps that to a
string like "builtin config".


git-svn-id: svn://svn.cc65.org/cc65/trunk@3358 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 21:08:59 +00:00
cuz
e128341854 Replace obsolete "wprot" segment type by "ro".
git-svn-id: svn://svn.cc65.org/cc65/trunk@3357 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 21:08:04 +00:00
cuz
83147e5fce New info file statement "asminc" that allows to read in a file containing
symbol values in asm syntax.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3355 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 20:16:57 +00:00
cuz
7774e57eae New segment attribute ALIGN_LOAD. Some cleanup.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3353 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 13:44:11 +00:00
cuz
1875825e78 New segment APPZP
git-svn-id: svn://svn.cc65.org/cc65/trunk@3352 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-06 13:20:23 +00:00
cuz
49d1a47269 Several improvements and a few bug fixes
git-svn-id: svn://svn.cc65.org/cc65/trunk@3339 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-19 22:15:43 +00:00
cuz
218e722b91 Fixes for the Watcom compiler and some general improvements for older
compilers that don't have the va_copy macro.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3338 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-18 14:28:42 +00:00
cuz
ae70828938 Some improvements using the new SB_Printf for string buffers
git-svn-id: svn://svn.cc65.org/cc65/trunk@3335 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-16 22:43:52 +00:00
cuz
41ec19b72a Use inttypes.h and the intmax_t/uintmax_t types
git-svn-id: svn://svn.cc65.org/cc65/trunk@3332 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-16 22:38:07 +00:00
cuz
3dab55e339 New module inttypes.h
git-svn-id: svn://svn.cc65.org/cc65/trunk@3331 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-16 22:37:30 +00:00
cuz
0ce95ffe6a Fixed another bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3329 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-16 20:26:46 +00:00
cuz
5b851fb621 Fixed several bugs
git-svn-id: svn://svn.cc65.org/cc65/trunk@3328 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-16 20:07:49 +00:00
cuz
e43766ea93 Added a basic vsnprintf implementation to work around problems with compilers
that don't have it.
Added SB_VPrintf and SB_Printf as safe replacement for sprintf function
with the output going into a string buffer.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3327 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-15 21:23:22 +00:00
cuz
3692fd40da New test optimization
git-svn-id: svn://svn.cc65.org/cc65/trunk@3310 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-11-27 21:13:07 +00:00
cuz
9ba5eafedf Optimization step that handles load from *ptr++ if ptr is a char* register
variable.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3309 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-11-27 20:52:46 +00:00
cuz
d2c8a754db Handle static functions correctly with %v.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3308 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-11-27 20:52:06 +00:00
cuz
d46b1a395b Fixed a bug in code generation for left shifts
git-svn-id: svn://svn.cc65.org/cc65/trunk@3296 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-11-23 10:04:34 +00:00
cuz
1cb722ba7d The absolute X indirect addressing mode for the 65C02 CPU was missing.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3266 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-26 20:20:55 +00:00
cuz
56656eac69 interruptor is now supported by the runtime
git-svn-id: svn://svn.cc65.org/cc65/trunk@3265 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-26 19:46:26 +00:00
cuz
8af1d395df Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3243 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-14 16:24:25 +00:00
cuz
d204e4a1ad Added zilog/intel style hex numbers
git-svn-id: svn://svn.cc65.org/cc65/trunk@3242 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-11 19:01:51 +00:00
cuz
843c183698 Changes for new WINE version
git-svn-id: svn://svn.cc65.org/cc65/trunk@3241 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-11 17:09:56 +00:00
cuz
19e1167b82 Use Line only if available
git-svn-id: svn://svn.cc65.org/cc65/trunk@3238 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-10 10:30:03 +00:00
cuz
340a16e399 The --forget-inc-paths option did not work correctly
git-svn-id: svn://svn.cc65.org/cc65/trunk@3237 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-10 10:19:19 +00:00
cuz
8874a80ddd Fixed a bug in inlined memcpy
git-svn-id: svn://svn.cc65.org/cc65/trunk@3236 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-09 19:09:35 +00:00
cuz
0e0183020d Fixed a escape char const problem
git-svn-id: svn://svn.cc65.org/cc65/trunk@3235 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-09 14:32:27 +00:00
cuz
f962da83c2 Added the builtin config for the lynx game console
git-svn-id: svn://svn.cc65.org/cc65/trunk@3224 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-08 18:51:37 +00:00
cuz
b2af5120fb Added the lynx target
git-svn-id: svn://svn.cc65.org/cc65/trunk@3218 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-08 09:23:59 +00:00
cuz
23ef4fa172 Added the lynx target
git-svn-id: svn://svn.cc65.org/cc65/trunk@3217 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-08 09:23:02 +00:00
cuz
856046e41d Added SWEET 16 CPU
git-svn-id: svn://svn.cc65.org/cc65/trunk@3210 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-03 22:10:42 +00:00
cuz
7d0eb0d3ff Added new CPU SWEET16
git-svn-id: svn://svn.cc65.org/cc65/trunk@3208 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-03 21:26:00 +00:00
cuz
7d72f47fe6 Added new CPU SWEET16
git-svn-id: svn://svn.cc65.org/cc65/trunk@3207 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-03 21:25:29 +00:00
cuz
e43054905b Removed the shift runtime functions because there calling semantics have been
changed and size optimizations are no longer possible and needed.
Use the UNKNOWN_REGVAL constant instead of -1.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3202 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-28 19:44:17 +00:00
cuz
f2167895cd Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@3200 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-23 19:05:57 +00:00
cuz
3b58383277 Allow to override CC65_LIB on the command line
git-svn-id: svn://svn.cc65.org/cc65/trunk@3199 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-23 19:05:49 +00:00
cuz
25c8f27d2f Allow to override CC65_INC on the command line
git-svn-id: svn://svn.cc65.org/cc65/trunk@3198 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-23 19:04:00 +00:00
cuz
40d01eb4ce Fixed bug with braces in initializer lists
git-svn-id: svn://svn.cc65.org/cc65/trunk@3193 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-23 17:34:03 +00:00
cuz
2414d6cd11 Invalid code was generated for a switch statement with no case labels.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3191 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-22 17:48:23 +00:00
cuz
cfef8e1e0d Renamed __IRQFUNC_xxx -> __INTERRUPTOR_xxx
git-svn-id: svn://svn.cc65.org/cc65/trunk@3189 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-20 10:24:59 +00:00
cuz
e6b456a8a6 New condes type interruptor
git-svn-id: svn://svn.cc65.org/cc65/trunk@3188 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-20 10:23:57 +00:00
cuz
777dcff9bf New condes type interruptor
git-svn-id: svn://svn.cc65.org/cc65/trunk@3187 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-20 10:15:01 +00:00
cuz
1b3e3633b9 Fixed a C99ism
git-svn-id: svn://svn.cc65.org/cc65/trunk@3183 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-16 14:31:40 +00:00
cuz
06b57e6e7e Introduce a -E flag that activates just the preprocessor.
Use variable sized string buffers for input and macro processing instead
of the fixed buffers used before.
Many changes in the preprocessor to make it more standards compliant (which
it is still not).


git-svn-id: svn://svn.cc65.org/cc65/trunk@3182 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-16 12:42:41 +00:00
cuz
684010abf1 Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@3178 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-10 09:55:55 +00:00
cuz
d2999d9e7e Fixed the definition of the long branch macros to avoid "Constant expression
expected" errors when the branch target is outside the local scope.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3176 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-08-16 10:04:09 +00:00
cpg
7c1590b5d5 fix comment
git-svn-id: svn://svn.cc65.org/cc65/trunk@3174 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-08-04 00:10:55 +00:00
cuz
366d066375 Fixed the last fix
git-svn-id: svn://svn.cc65.org/cc65/trunk@3171 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-08-02 17:19:52 +00:00
cuz
123677c802 In a function call for all parameters not covered by a prototype, convert
arrays to pointer to first element, and functions to pointer to function.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3169 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-08-02 16:39:55 +00:00
cuz
dd9ee0ae37 New function PtrConversion
git-svn-id: svn://svn.cc65.org/cc65/trunk@3168 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-08-02 16:37:00 +00:00
cuz
3b8b9704bc Added IsODigit
git-svn-id: svn://svn.cc65.org/cc65/trunk@3167 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-29 20:51:58 +00:00
cuz
1fb5967496 Fixed inline assembler problems with instructions where implicit means
actually accumulator addressing. These went through and caused the
optimizer to behave strangely.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3164 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-18 09:34:52 +00:00
cuz
9b2834ef7e Improve handling of files with foreign newline sequences.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3163 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-18 08:46:12 +00:00
cuz
104f041111 Add dummy return value to avoid a wcc warning
git-svn-id: svn://svn.cc65.org/cc65/trunk@3162 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-17 22:16:02 +00:00
cuz
feec244272 Remove exprnode.obj
git-svn-id: svn://svn.cc65.org/cc65/trunk@3161 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-17 22:15:43 +00:00
cuz
9c0bf14454 Fixed problems with unnamed labels
git-svn-id: svn://svn.cc65.org/cc65/trunk@3160 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-17 22:14:30 +00:00
cuz
764955a915 Make a few params const
git-svn-id: svn://svn.cc65.org/cc65/trunk@3155 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-11 14:06:49 +00:00
cuz
0ba074995c Check for invalid function names before trying to compare the name against
the names of known standard functions.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3154 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-11 13:47:57 +00:00
cuz
725afdee94 Added SB_Compare
git-svn-id: svn://svn.cc65.org/cc65/trunk@3153 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-11 11:13:10 +00:00
cuz
1182d4cbd9 A main function not returning an int is not allowed in standard C
git-svn-id: svn://svn.cc65.org/cc65/trunk@3147 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-06 14:25:48 +00:00
cuz
2c3d5773f3 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3146 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-06 14:25:03 +00:00
cuz
9df7321d90 Cleanup in ShiftExpr.
Changed GetCodePos to also remember the stack pointer at the given location,
this removes the necessity to manipulate the stack when removing code. Since
CodeMark is now a struct, the API for most asmcode functions has changed.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3145 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-07-06 11:30:08 +00:00
cuz
07419b62f8 Changed shift functions, added info about shift runtime functions
git-svn-id: svn://svn.cc65.org/cc65/trunk@3142 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-30 19:18:56 +00:00
cuz
76e31df5f8 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3140 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-29 20:48:35 +00:00
cuz
e354d269f6 Remove shifts from kcalc
git-svn-id: svn://svn.cc65.org/cc65/trunk@3139 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-29 20:44:50 +00:00
cuz
809d1408ce Move shift expression evaluation into a separate module. More checks and
improvements for shift expressions.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3138 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-29 20:44:01 +00:00
cuz
31f85bc23e Renaming and cleanup
git-svn-id: svn://svn.cc65.org/cc65/trunk@3137 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-29 20:37:18 +00:00
cuz
e8afc897cf Some renaming
git-svn-id: svn://svn.cc65.org/cc65/trunk@3136 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-29 20:35:39 +00:00
cuz
daf8e0d1e6 Added license information preproc.h
git-svn-id: svn://svn.cc65.org/cc65/trunk@3135 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-29 20:26:27 +00:00
cuz
b2b7006939 Fixed a problem
git-svn-id: svn://svn.cc65.org/cc65/trunk@3134 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-21 22:30:07 +00:00
cuz
13a2927e17 The -A and --ansi switches are gone, together with the __STRICT_ANSI__
predefined macro. Instead there is now a command line option --standard that
allows to set c89, c99 or cc65 as language standard. The compiler defines a
macro __CC65_STD__ that is one of __CC65_STD_C89__, __CC65_STD_C99__ or
__CC65_STD_CC65__ depending on the command line option. Default is cc65 (all
extensions) as before.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3133 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-21 22:22:11 +00:00
cuz
d01687fd82 Removed the undocumented, obsolete and unused OptDisable flagset
git-svn-id: svn://svn.cc65.org/cc65/trunk@3132 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-15 21:24:47 +00:00
cuz
ca2b070935 Make the -W flag stackable.
New pragmas codesize, optimize and warn.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3130 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-15 21:05:40 +00:00
cuz
d8279302a9 Make the -O and --codesize options stackable.
Copy the current optimization settings into a code segment on creation.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3129 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-15 20:29:49 +00:00
cuz
9cb7015055 Inline assembly can now reference C labels with the %g format specifier
git-svn-id: svn://svn.cc65.org/cc65/trunk@3128 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-15 20:08:01 +00:00
cuz
a3e6fbd21f Some cleanup
git-svn-id: svn://svn.cc65.org/cc65/trunk@3127 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-15 20:05:54 +00:00
cuz
a3039d57fc Fixed problems on 64 bit platforms and some other sloopyness when working
with the element count of an array.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3120 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-10 13:03:28 +00:00
cuz
300919d61f Better error messages
git-svn-id: svn://svn.cc65.org/cc65/trunk@3119 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-10 11:02:05 +00:00
cuz
cb7c50a8ce Fixed a warning
git-svn-id: svn://svn.cc65.org/cc65/trunk@3118 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-10 10:37:55 +00:00
cuz
d184d938fd Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3117 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-10 08:48:02 +00:00
cuz
573f1818df Check the return code of the submakes (Christian Groessler)
git-svn-id: svn://svn.cc65.org/cc65/trunk@3115 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-09 19:30:33 +00:00
cuz
975323ece2 Renamed ExprLoad to LoadExpr.
Moved LoadExpr + support functions into a separate module.
Removed obsolete files.
Some cleanup and makefile adjustments.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3114 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-09 19:25:28 +00:00
cuz
8752f0b2c1 Removed ExprLoad to LoadExpr.
Moved LoadExpr + support functions into a separate module.
Removed obsolete files.
Some cleanup and makefile adjustments.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3113 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-09 14:12:57 +00:00
cuz
3ac1a08baf Cleaned up the code used for handling jump labels and the label name.
Fixed a problem that caused the optimizer not to detect that flags set by
a load are used, if the use is "hidden" behind an unconditional branch. This
caused the optimizer to remove the load.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3111 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-07 21:16:49 +00:00
cuz
8425d988fe Removed debug code
git-svn-id: svn://svn.cc65.org/cc65/trunk@3110 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-06 18:36:15 +00:00
cuz
71ed8810c3 Minor change
git-svn-id: svn://svn.cc65.org/cc65/trunk@3109 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-06 18:36:08 +00:00
cuz
f500a641c5 Added support for floating point constants in the scanner and Primary()
git-svn-id: svn://svn.cc65.org/cc65/trunk@3108 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-06 15:59:44 +00:00
cuz
9fc71c5e93 Renamed ExprDesc.Val to ExprDesc.IVal. Added an FVal field for a floating
point constant.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3107 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-06 14:48:59 +00:00
cuz
eb388aa237 The loop code will access the stackpointer directly
git-svn-id: svn://svn.cc65.org/cc65/trunk@3106 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-06 10:52:32 +00:00
cuz
651c6e5cbf Add predefined type strings for float and double
git-svn-id: svn://svn.cc65.org/cc65/trunk@3105 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-06 10:49:59 +00:00
cuz
c76e14f9f5 Improved code for or and xor
git-svn-id: svn://svn.cc65.org/cc65/trunk@3102 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 22:10:04 +00:00
cuz
5586527fcc Move the test flags into the Flags bitset of struct ExprDesc
git-svn-id: svn://svn.cc65.org/cc65/trunk@3101 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 20:29:47 +00:00
cuz
aa39d98cbc When changing the reference to a jump label, do also replace the string
argument for the instruction with the name of the new jump label. This
allows CodeEntriesAreEqual to work in all cases, and therefore optimizations
based on this function will also work more effectively (or at all).


git-svn-id: svn://svn.cc65.org/cc65/trunk@3100 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 16:21:07 +00:00
cuz
e4473c0a96 Repeat the check in OptJumpTarget whenever a match is found to find rows of matches
git-svn-id: svn://svn.cc65.org/cc65/trunk@3099 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 16:19:23 +00:00
cuz
522f1d86d4 Generate LDY instead of INY whenever possible because this allows better
detection of known patterns and is replaced by INY in a later step anyway.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3098 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 16:18:30 +00:00
cuz
08eb9b7b0e Check for and warn on statements that don't have an effect
git-svn-id: svn://svn.cc65.org/cc65/trunk@3097 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 12:56:51 +00:00
cuz
3a0edbff75 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3096 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 11:50:04 +00:00
cuz
104ae3a54f Move the compiler stack pointer into its own module.
Improved the inlining of standard C functions. Added more standard functions
to inline.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3095 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 11:35:53 +00:00
cuz
a0c1b9fe38 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3094 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-05 11:33:44 +00:00
cuz
1ec972d0c4 Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@3093 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 21:30:37 +00:00
cuz
3a144965fa Added T_SIZE_T as an alias for T_UINT
git-svn-id: svn://svn.cc65.org/cc65/trunk@3090 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 17:52:19 +00:00
cuz
28a60dd8d5 Added strcpy
git-svn-id: svn://svn.cc65.org/cc65/trunk@3089 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 17:51:49 +00:00
cuz
da2049637a Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@3088 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 17:00:48 +00:00
cuz
87d0d88986 Check the InlineStdFuncs flag later
git-svn-id: svn://svn.cc65.org/cc65/trunk@3086 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 14:37:50 +00:00
cuz
361316246b Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3085 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 14:36:54 +00:00
cuz
b1d7f78bce More debugging output
git-svn-id: svn://svn.cc65.org/cc65/trunk@3084 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 14:36:36 +00:00
cuz
eb9d9ee0c5 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3083 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-04 14:06:36 +00:00
cuz
f4995609ef Define symbols depending on the target system similar to the C compiler.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3079 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-03 21:12:29 +00:00
cuz
8c4b3599a2 Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@3073 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-03 12:09:24 +00:00
cuz
2fa9b6e5ac Improved code generation
git-svn-id: svn://svn.cc65.org/cc65/trunk@3072 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-03 12:08:49 +00:00
cuz
01104d26ea Fixed generation of non optimal code in StructRef()
git-svn-id: svn://svn.cc65.org/cc65/trunk@3071 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-03 11:10:30 +00:00
cuz
763a359114 Comment and indentation changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@3070 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-03 11:08:50 +00:00
cuz
6e34e386cb Rewrote code generation for the strlen standard function. Added code for
other standard functions in several places.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3069 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-02 21:33:35 +00:00
cuz
2bb2ceec33 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3067 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-02 21:20:18 +00:00
cuz
d8f7384091 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3066 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-01 20:30:44 +00:00
cuz
efdd68e735 Fix external function names
git-svn-id: svn://svn.cc65.org/cc65/trunk@3063 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-06-01 08:48:20 +00:00
cuz
111c69a826 String literals can be handled as static data in most cases
git-svn-id: svn://svn.cc65.org/cc65/trunk@3062 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-31 19:51:13 +00:00
cuz
f5403e7d57 Load programs at 13:5900 instead of 00
git-svn-id: svn://svn.cc65.org/cc65/trunk@3057 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-31 19:25:38 +00:00
cuz
8d8162eb23 Rewrite/cleanup of the complete expression flags handling.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3056 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-31 15:27:33 +00:00
cuz
ef6a034153 Removed unused modules
git-svn-id: svn://svn.cc65.org/cc65/trunk@3051 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-27 14:20:16 +00:00
cuz
fedb566ff1 Some renaming and restructuring
git-svn-id: svn://svn.cc65.org/cc65/trunk@3050 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-26 16:15:28 +00:00
cuz
4f024ca81b Added a missing include
git-svn-id: svn://svn.cc65.org/cc65/trunk@3049 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-26 13:55:48 +00:00
cuz
72923eb316 Generate assembler names for symbols
git-svn-id: svn://svn.cc65.org/cc65/trunk@3048 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-26 13:44:53 +00:00
cuz
2cdef2d58f Add standard names for library functions
git-svn-id: svn://svn.cc65.org/cc65/trunk@3047 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-26 13:42:19 +00:00
cuz
878e4f1352 Changed the expression parser to return the lvalue flag as part of the
ExprDesc structure, not as separate value.
WARNING: The current code does compile but does not work correctly, because
the lvalue flag is part of ExprDesc.Flags and not masked out in several tests
throughout the code.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3046 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-25 20:59:38 +00:00
cuz
556b861640 Better error messages in case of a range error
git-svn-id: svn://svn.cc65.org/cc65/trunk@3042 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-14 15:05:51 +00:00
cuz
b58b62c77e Better error messages
git-svn-id: svn://svn.cc65.org/cc65/trunk@3025 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-12 08:51:58 +00:00
cuz
19b9305f02 Added 6502 illegal instructions
git-svn-id: svn://svn.cc65.org/cc65/trunk@3022 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-11 20:32:36 +00:00
cuz
1a68dd715a New --list-bytes option
git-svn-id: svn://svn.cc65.org/cc65/trunk@3019 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-10 21:50:13 +00:00
cuz
ab78147991 Fixed a small memory leak
git-svn-id: svn://svn.cc65.org/cc65/trunk@3018 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-10 21:06:53 +00:00
cuz
0effd47c41 Add 6502X cpu
git-svn-id: svn://svn.cc65.org/cc65/trunk@3017 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-10 09:32:01 +00:00
cuz
1286c79d85 Added CPU_6502X for 6502 with illegal opcodes
git-svn-id: svn://svn.cc65.org/cc65/trunk@3016 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-09 21:06:36 +00:00
cuz
b10b7cd3e8 Fixed a problem with {} enclosed token lists and implemented them for
.blank and .tcount.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3014 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-09 20:24:51 +00:00
cuz
fdb685b874 Allow token lists to be optionally enclosed in curly braces. Using such
enclosement, tokens that would otherwise terminate the list can be part
of the list.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3013 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-09 19:45:07 +00:00
cuz
d7234541e2 Fixed compiler warnings
git-svn-id: svn://svn.cc65.org/cc65/trunk@3006 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-02 19:17:10 +00:00
cuz
fe9c53730c The type parser didn't check bounds for the type string it created in a
fixed size buffer.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3005 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-02 09:57:05 +00:00
cuz
4add4c3396 More output when using -v.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3004 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-02 09:50:27 +00:00
cuz
1ae117fed8 Fixed a bug in the handling of ranges where the granularity is not one: An
internally generated label could disrupt the output of such a range by
adding an offset not equal to the granularity. The solution is to only
add dependent labels within such a range on all addresses that do not
match the granularity (odd addresses for a .word table for example).


git-svn-id: svn://svn.cc65.org/cc65/trunk@3002 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-29 14:00:28 +00:00
cuz
3ccd9f97c7 Use .addr for address tables
git-svn-id: svn://svn.cc65.org/cc65/trunk@3001 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-28 20:52:28 +00:00
cuz
968cf01d58 Fixed a problem with the ubiquitous_idents change
git-svn-id: svn://svn.cc65.org/cc65/trunk@2983 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-20 13:10:52 +00:00
cuz
c3d510a9bc Add a new feature "ubiquitous_idents" that allows the use of instructions as
identifiers and macro names.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2981 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-20 12:49:36 +00:00
cuz
0eba6f615f Fixed a problem with .global: In some situations, exported symbols went
into the object files with an address size of ADDR_SIZE_DEFAULT, something
which cannot be handled by the linker.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2980 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-19 17:00:12 +00:00
cuz
5c63b08d26 New feature missing_char_term
git-svn-id: svn://svn.cc65.org/cc65/trunk@2964 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-29 15:58:34 +00:00
cuz
5f3ed8826f Added an interrupt facility similar to that on the C128 and Plus/4
git-svn-id: svn://svn.cc65.org/cc65/trunk@2956 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-23 21:50:15 +00:00
cuz
04d2a349af Rewrite. This fixes a bug where a forward reference (+1) to a non existing
label caused an internal error. It does also add checking for unreferenced
labels.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2950 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-21 16:15:55 +00:00
cuz
eeea3b9bc2 Adjust year in copyright string
git-svn-id: svn://svn.cc65.org/cc65/trunk@2949 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-21 16:15:04 +00:00
cuz
c638243881 Changed a bug in the the translation table for the Atari: \a (bell) should
now work.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2948 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-21 15:13:45 +00:00
cuz
1447b104db Fixed a problem with conditional assembly. The assembler did not check if end
of lined was reached after a .IF/.ELSE/... This could lead to invalid input
accepted without an error message.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2947 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-21 11:03:08 +00:00
cuz
3f1ebfe116 Fixed a small bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2946 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-20 19:23:03 +00:00
cuz
0bbcaa5c1a New option --list-targets
git-svn-id: svn://svn.cc65.org/cc65/trunk@2945 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-20 09:36:22 +00:00
cuz
60bf40f6db Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2941 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-19 10:38:09 +00:00
cuz
1b81dcc64f Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@2940 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-19 10:18:21 +00:00
cuz
1a9c9bf32f Output a warning for a call to memset with a count of zero.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2939 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-18 09:43:08 +00:00
cuz
3f4096d303 Optimization for __bzero.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2933 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-15 22:03:50 +00:00
cuz
09a608cd58 Removed a useless function call
git-svn-id: svn://svn.cc65.org/cc65/trunk@2930 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-14 19:58:48 +00:00
cuz
b78ef1e0b4 Removed obsolete comment
git-svn-id: svn://svn.cc65.org/cc65/trunk@2929 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-14 11:16:49 +00:00
cuz
89fc8f3df7 Fixed a bug: The volatile keyword was not accepted in type casts or as
argument to the sizeof operator, if the type spec is starting with this
keyword.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2921 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-13 22:37:13 +00:00
cuz
5f2569ef28 New target APPLE2ENH
git-svn-id: svn://svn.cc65.org/cc65/trunk@2912 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-11 21:29:09 +00:00
cuz
897b12cdb2 Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@2911 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-11 21:28:49 +00:00
cuz
bcf09a96bb New target APPLE2ENH
git-svn-id: svn://svn.cc65.org/cc65/trunk@2910 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-11 21:21:33 +00:00
cuz
c313ae2ce4 Added a new apple2enh target
git-svn-id: svn://svn.cc65.org/cc65/trunk@2909 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-11 20:52:23 +00:00
cuz
40dc3582a9 Allow push/pop arguments for segment name #pragmas
git-svn-id: svn://svn.cc65.org/cc65/trunk@2907 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-08 22:33:27 +00:00
cuz
742d8c3294 Renamed IS_Pop to IS_Drop
git-svn-id: svn://svn.cc65.org/cc65/trunk@2905 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-07 22:09:25 +00:00
cuz
9d439d9dd2 New module strstack
git-svn-id: svn://svn.cc65.org/cc65/trunk@2904 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-07 22:09:06 +00:00
cuz
d0ea9f34b6 Made several options that can be changed by #pragmas stackable.
Added new #pragma regvars.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2902 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-07 21:53:35 +00:00
cuz
7492c924e3 New module intstack
git-svn-id: svn://svn.cc65.org/cc65/trunk@2901 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-07 21:52:30 +00:00
cuz
04ccfdd660 Added missing 'simple escape sequences'
git-svn-id: svn://svn.cc65.org/cc65/trunk@2894 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 19:42:19 +00:00
cuz
f2a74164a2 Fixed a bug: Octal character constants were not handled correctly.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2893 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 19:42:07 +00:00
cuz
6577ca9cb3 SB_GetNumber didn't handle a sign correctly
git-svn-id: svn://svn.cc65.org/cc65/trunk@2892 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 19:30:08 +00:00
cuz
98e3d2815e Added missing 'simple escape sequences'
git-svn-id: svn://svn.cc65.org/cc65/trunk@2891 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 19:27:59 +00:00
cuz
9bf337a37b Pass chars as ints
git-svn-id: svn://svn.cc65.org/cc65/trunk@2890 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 19:25:26 +00:00
cuz
e47ed98aa7 Move the expression test code into separate modules.
The Test() and TestInParens() functions do now return information about the
expression that was tested.
An if... statement where the expression is always true will now print a
warning "Unreachable code" if it has an else clause.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2889 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 18:00:08 +00:00
cuz
9d46a42600 Fixed two errors, skip to end of line in case of an error
git-svn-id: svn://svn.cc65.org/cc65/trunk@2887 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 17:24:30 +00:00
cuz
96f96a5bde Identifiers starting with a dot could not be used as namens for .define
style macros, even with --leading_dots_in_identifiers. This was also true
for symbols with one character names and without a leading dot.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2882 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-02-22 11:34:29 +00:00