acqn
23aa562094
Fixed potential errors with subtraction evaluation of identifiers at different memory locations.
2024-02-24 15:34:38 +08:00
acqn
0b06c34dfc
Added primitive support for the ISO C99 inline feature as well as the __inline__ extension.
...
No inlining is actually done but that part is not required by the standard.
2024-01-14 00:08:41 +08:00
Bob Andrews
8c329dfd1a
Merge pull request #2344 from acqn/Cleanup
...
[cc65] Cleanup for symbol types and flags
2024-01-12 16:02:08 +01:00
Bob Andrews
28f892bb3c
Merge pull request #2345 from acqn/PtrFix
...
[cc65] Fixed regression on comparison to null pointer
2024-01-11 16:50:49 +01:00
acqn
38dac907e8
Cleanup for symbol types and flags.
2024-01-10 04:51:59 +08:00
acqn
2682fc0b79
Fixed regression on comparison to null pointer.
2024-01-10 04:51:20 +08:00
acqn
94dfc08c0e
Fixed false "Non constant initializers" error messages on wrong places, which could be resulted from failed array declarations etc.
2024-01-10 04:43:50 +08:00
acqn
2564aaa12c
Refix for diagnosis on expected expressions.
2024-01-10 04:48:27 +08:00
acqn
acbd87b576
Renamed GetUnqualTypeCode() to GetUnderlyingTypeCode() for consistency with GetUnderlyingType().
2024-01-01 15:27:57 +08:00
Bob Andrews
bc97bce8c1
Merge pull request #2297 from acqn/WrappedCall
...
[cc65] Fixed wrapped call when the function was defined before its later declaration gets wrapped with the pragma
2023-12-12 17:11:47 +01:00
acqn
befc9533c6
More accurate diagnostic messages on empty declarations without any type specifiers.
2023-12-10 20:21:50 +08:00
acqn
cadf8012f6
Improved error recovery with type cast and sizeof.
2023-12-10 15:43:24 +08:00
acqn
a1a060c291
Declaration specifier flags cleanup.
2023-12-10 15:43:24 +08:00
acqn
79b4690077
Fixed missing diagnostics on empty enum/struct/union declareations without tag names.
...
Improved error recovery with local declarations and _Static_assert.
2023-12-10 15:43:24 +08:00
acqn
b66682a05b
Fixed wrapped call when the function to wrap has already got defined before it is wrapped with the pragma.
2023-12-10 00:47:10 +08:00
acqn
98ffc031d1
Fixed an iteration bug in type composition.
2023-12-09 14:35:00 +08:00
acqn
47e7ed2f56
Fixed wrong "Mixed declarations and code are not supported in cc65" error message when it should be "Expression expected".
2023-11-30 00:36:13 +08:00
acqn
b99ebc1256
Fixed diagnostic messages about undeclared identifiers.
2023-11-27 20:39:15 +08:00
Bob Andrews
94ef5856d0
Merge pull request #2235 from acqn/Cleanup
...
[cc65] Cleanups
2023-10-26 20:07:39 +02:00
Bob Andrews
401bcaa5ff
Merge pull request #2237 from acqn/CGType
...
[cc65] Renamed type facility functions for deciding code generation type flags
2023-10-26 19:50:10 +02:00
acqn
a31b35b2a6
Fixed naming of local variables in CG_TypeOfBySize and CG_TypeOf.
2023-10-22 10:42:17 +08:00
acqn
8111946731
Fixed array subscript with a bit-field with patch by kugelfuhr.
2023-10-15 15:53:03 +08:00
acqn
25832ef5fc
Fixed timing of #pragma charmap.
...
Now it is immediately applied and affects almost all characters and string literals after it.
Exceptions:
- String literals as the message of a static assertion or inline assembler code (only the required one, not any optional formatted arguments) in an asm() expression are not translated with either #pragma charmap or target presets.
- String literals used for preprocessor directives or as the result of stringized macro arguments are never translated.
2023-10-13 16:32:06 +08:00
Bob Andrews
2726192aaf
Merge pull request #2224 from acqn/DeclCleanUp
...
[cc65] Made functions in src/cc65/declare.c less confusing
2023-10-14 20:09:05 +02:00
acqn
74922afa7c
Made the intension of functions in src/cc65/declare.c less confusing.
2023-10-12 17:31:49 +08:00
acqn
51e304f10f
Added check for total arguments size for variadic functions.
2023-09-18 16:44:04 +08:00
acqn
b0ef3572ea
Improved error messages about missing identifiers.
2022-11-12 12:28:22 +08:00
Bob Andrews
05cd805cbc
Merge pull request #2085 from bbbradsmith/numerical_constant_errors-float
...
Numerical constant errors and improvements (float)
2023-08-25 22:30:07 +02:00
bbbradsmith
a686d1fa8e
Allow unary +/- for floating point constants
2023-05-03 16:48:02 -04:00
bbbradsmith
1c26b1cf1b
RHS primary integer promotion must happen after loading the primary, not before. See: #2060
2023-05-02 14:42:00 -04:00
acqn
1dccd1333b
Added more type utility functions.
...
Changed result of GetBasicTypeName() for unknown types from "type" to "<type>".
2022-10-12 13:10:17 +08:00
acqn
5fd9169904
Renamed type facility functions for deciding code generation type flags.
2022-10-12 13:10:17 +08:00
acqn
9d693d2c80
Warnings instead of errors for division-by-zero/modulo-with-zero in evaluation.
2022-11-12 22:13:56 +08:00
acqn
75be73cc8d
Added utility functions to acquire bit width of types.
2022-11-12 12:32:27 +08:00
acqn
2c3ca15d90
Fixed marking unevaluated subexpressions for conditional operator.
2022-11-12 12:32:27 +08:00
Bob Andrews
6924d44564
Merge pull request #1911 from acqn/TypeFix
...
[cc65] Organized type-related stuff better
2022-11-11 22:05:45 +01:00
acqn
e10b5fd79b
Renamed a few functions and struct used for declaration parser.
2022-11-08 14:42:52 +08:00
acqn
8a7f566387
Fixed support for storage class specifiers after type specifiers.
2022-11-03 21:46:42 +08:00
Bob Andrews
7146dbc87d
Merge pull request #1879 from acqn/SymEntryFix
...
[cc65] SymEntry cleanups
2022-11-04 14:06:47 +01:00
acqn
d84cc2d122
Fixed errors in the conditional operator "? :" parser.
2022-11-02 13:56:55 +08:00
bbbradsmith
4540205b0d
Emit warning for signed integer constant overflow
2022-10-13 23:49:07 -04:00
acqn
a4a1230c62
Renamed some C type facility and fixed a few comments.
...
Added some new C type code facility.
Removed some unused type predicates.
2022-10-12 13:10:17 +08:00
acqn
a2dfa7c721
More consistent names for SymEntry functions.
2022-10-12 13:10:17 +08:00
acqn
164eb198ce
Moved type facility functions for deciding code generation type flags.
2022-10-12 13:10:17 +08:00
acqn
2cda47cd36
More descriptive names for SymEntry usage.
2022-10-11 14:14:48 +08:00
acqn
26945c32ac
Fixed function parameters declared as function types rather than function pointers.
2022-08-24 15:30:52 +08:00
acqn
624e5025b0
Fixed parsing wide char constants.
2022-08-17 22:28:00 +08: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
2c742ffc1c
Merge pull request #1800 from acqn/PPFix
...
[cc65] Preprocessor fixes
2022-07-28 01:48:41 +02:00
acqn
066a5e0fec
Fixed #pragma charmap for string literals.
2022-07-24 16:38:41 +08:00