This website requires JavaScript.
Explore
Help
Register
Sign In
shishantbiswas
/
c3c
Watch
1
Star
1
Fork
0
You've already forked c3c
mirror of
https://github.com/c3lang/c3c.git
synced
2026-02-27 12:01:16 +00:00
Code
Issues
Packages
Projects
Releases
Wiki
Activity
Files
a4df94d228fc0bbb5305c8741235712cdc0ba196
c3c
/
test
/
test_suite
/
compile_time
History
Christoffer Lerno
a4df94d228
$foreach doesn't create an implicit syntactic scope. Fix of previous debug info fix.
2024-06-06 23:15:21 +02:00
..
compile_time_access_subscript.c3t
0.6.0: init_new/init_temp removed. LinkedList API rewritten. List "pop" and "remove" function now return Optionals. RingBuffer API rewritten. Allocator interface changed. Deprecated Allocator, DString and mem functions removed. "identity" functions are now constants for Matrix and Complex numbers.
@default
implementations for interfaces removed.
any*
=>
any
, same for interfaces. Emit local/private globals as "private" in LLVM, following C "static". Updated enum syntax. Add support [rgba] properties in vectors. Improved checks of aliased "void". Subarray -> slice. Fix of llvm codegen enum check. Improved alignment handling. Add --output-dir
#1155
. Removed List/Object append.
GenericList
renamed
AnyList
. Remove unused "unwrap". Fixes to cond. Optimize output in dead branches. Better checking of operator methods. Disallow
any
from implementing dynamic methods. Check for operator mismatch. Remove unnecessary bitfield. Remove numbering in --list* commands Old style enum declaration for params/type, but now the type is optional. Add note on
#1086
. Allow making distinct types out of "void", "typeid", "anyfault" and faults. Remove system linker build options. "Try" expressions must be simple expressions. Add optimized build to Mac tests. Register int.
assert(false)
only allowed in unused branches or in tests. Compile time failed asserts is a compile time error. Remove current_block_is_target. Bug when assigning an optional from an optional. Remove unused emit_zstring. Simplify phi code. Remove unnecessary unreachable blocks and remove unnecessary current_block NULL assignments. Proper handling of '.' and Win32 '//server' paths. Unify expression and macro blocks in the middle end. Add "no discard" to expression blocks with a return value. Detect "unsigned >= 0" as errors. Fix issue with distinct void as a member
#1147
. Improve callstack debug information
#1184
. Fix issue with absolute output-dir paths. Lambdas were not type checked thoroughly
#1185
. Fix compilation warning
#1187
. Request jump table using @jump for switches. Path normalization - fix possible null terminator out of bounds. Improved error messages on inlined macros.
2024-05-22 18:22:04 +02:00
compile_time_array_ref.c3t
0.5.3: Single-module not respected. Fix issue with compiler defined types. Fix optimization levels for projects. Use GEP i8 on offsets. Optimize foreach on len 1 arrays. Move panic blocks last. Fix generic module wildcard imports. Deprecate init_temp / init_new. Fix issue with macro vaarg and untyped lists. Fix extern const globals.
2024-01-14 15:34:54 +01:00
compile_time_array.c3t
Fixes to native backtrace.
2023-11-13 17:20:46 +01:00
compile_time_bitops.c3t
Allow @test with modules. Change name mangling for non exports.
2023-02-20 16:02:30 +01:00
compile_time_pointers.c3t
Dev (
#777
)
2023-06-10 23:16:28 +02:00
compile_time_ptr_ref.c3t
0.5.3: Single-module not respected. Fix issue with compiler defined types. Fix optimization levels for projects. Use GEP i8 on offsets. Optimize foreach on len 1 arrays. Move panic blocks last. Fix generic module wildcard imports. Deprecate init_temp / init_new. Fix issue with macro vaarg and untyped lists. Fix extern const globals.
2024-01-14 15:34:54 +01:00
ct_and_or.c3
$and, $or, $is_const, $assignable, .is_eq, .is_ordered, $defined($vatype(2)) works looking if we can create a type, $defined(foo[0]) $defined(foo()). Remove $checks and @checked. Improvide casting checks to always work without destructive changes.
2023-10-24 22:06:04 +02:00
ct_assert_bug.c3
0.6.0: init_new/init_temp removed. LinkedList API rewritten. List "pop" and "remove" function now return Optionals. RingBuffer API rewritten. Allocator interface changed. Deprecated Allocator, DString and mem functions removed. "identity" functions are now constants for Matrix and Complex numbers.
@default
implementations for interfaces removed.
any*
=>
any
, same for interfaces. Emit local/private globals as "private" in LLVM, following C "static". Updated enum syntax. Add support [rgba] properties in vectors. Improved checks of aliased "void". Subarray -> slice. Fix of llvm codegen enum check. Improved alignment handling. Add --output-dir
#1155
. Removed List/Object append.
GenericList
renamed
AnyList
. Remove unused "unwrap". Fixes to cond. Optimize output in dead branches. Better checking of operator methods. Disallow
any
from implementing dynamic methods. Check for operator mismatch. Remove unnecessary bitfield. Remove numbering in --list* commands Old style enum declaration for params/type, but now the type is optional. Add note on
#1086
. Allow making distinct types out of "void", "typeid", "anyfault" and faults. Remove system linker build options. "Try" expressions must be simple expressions. Add optimized build to Mac tests. Register int.
assert(false)
only allowed in unused branches or in tests. Compile time failed asserts is a compile time error. Remove current_block_is_target. Bug when assigning an optional from an optional. Remove unused emit_zstring. Simplify phi code. Remove unnecessary unreachable blocks and remove unnecessary current_block NULL assignments. Proper handling of '.' and Win32 '//server' paths. Unify expression and macro blocks in the middle end. Add "no discard" to expression blocks with a return value. Detect "unsigned >= 0" as errors. Fix issue with distinct void as a member
#1147
. Improve callstack debug information
#1184
. Fix issue with absolute output-dir paths. Lambdas were not type checked thoroughly
#1185
. Fix compilation warning
#1187
. Request jump table using @jump for switches. Path normalization - fix possible null terminator out of bounds. Improved error messages on inlined macros.
2024-05-22 18:22:04 +02:00
ct_builtin_time_date.c3t
0.6.0: init_new/init_temp removed. LinkedList API rewritten. List "pop" and "remove" function now return Optionals. RingBuffer API rewritten. Allocator interface changed. Deprecated Allocator, DString and mem functions removed. "identity" functions are now constants for Matrix and Complex numbers.
@default
implementations for interfaces removed.
any*
=>
any
, same for interfaces. Emit local/private globals as "private" in LLVM, following C "static". Updated enum syntax. Add support [rgba] properties in vectors. Improved checks of aliased "void". Subarray -> slice. Fix of llvm codegen enum check. Improved alignment handling. Add --output-dir
#1155
. Removed List/Object append.
GenericList
renamed
AnyList
. Remove unused "unwrap". Fixes to cond. Optimize output in dead branches. Better checking of operator methods. Disallow
any
from implementing dynamic methods. Check for operator mismatch. Remove unnecessary bitfield. Remove numbering in --list* commands Old style enum declaration for params/type, but now the type is optional. Add note on
#1086
. Allow making distinct types out of "void", "typeid", "anyfault" and faults. Remove system linker build options. "Try" expressions must be simple expressions. Add optimized build to Mac tests. Register int.
assert(false)
only allowed in unused branches or in tests. Compile time failed asserts is a compile time error. Remove current_block_is_target. Bug when assigning an optional from an optional. Remove unused emit_zstring. Simplify phi code. Remove unnecessary unreachable blocks and remove unnecessary current_block NULL assignments. Proper handling of '.' and Win32 '//server' paths. Unify expression and macro blocks in the middle end. Add "no discard" to expression blocks with a return value. Detect "unsigned >= 0" as errors. Fix issue with distinct void as a member
#1147
. Improve callstack debug information
#1184
. Fix issue with absolute output-dir paths. Lambdas were not type checked thoroughly
#1185
. Fix compilation warning
#1187
. Request jump table using @jump for switches. Path normalization - fix possible null terminator out of bounds. Improved error messages on inlined macros.
2024-05-22 18:22:04 +02:00
ct_enum_values.c3t
Deprecate :; in $if etc.
2023-03-20 01:03:54 +01:00
ct_eval_sym.c3
Prevent ct_eval from returning an rvalue.
2022-10-04 22:41:07 +02:00
ct_eval.c3t
Allow @test with modules. Change name mangling for non exports.
2023-02-20 16:02:30 +01:00
ct_for.c3t
Deprecate :; in $if etc.
2023-03-20 01:03:54 +01:00
ct_foreach.c3t
$foreach doesn't create an implicit syntactic scope. Fix of previous debug info fix.
2024-06-06 23:15:21 +02:00
ct_func.c3t
Use
printn
rather than
println
. Add string methods for copying.
2023-02-04 19:48:42 +01:00
ct_funcptr.c3t
0.6.0: init_new/init_temp removed. LinkedList API rewritten. List "pop" and "remove" function now return Optionals. RingBuffer API rewritten. Allocator interface changed. Deprecated Allocator, DString and mem functions removed. "identity" functions are now constants for Matrix and Complex numbers.
@default
implementations for interfaces removed.
any*
=>
any
, same for interfaces. Emit local/private globals as "private" in LLVM, following C "static". Updated enum syntax. Add support [rgba] properties in vectors. Improved checks of aliased "void". Subarray -> slice. Fix of llvm codegen enum check. Improved alignment handling. Add --output-dir
#1155
. Removed List/Object append.
GenericList
renamed
AnyList
. Remove unused "unwrap". Fixes to cond. Optimize output in dead branches. Better checking of operator methods. Disallow
any
from implementing dynamic methods. Check for operator mismatch. Remove unnecessary bitfield. Remove numbering in --list* commands Old style enum declaration for params/type, but now the type is optional. Add note on
#1086
. Allow making distinct types out of "void", "typeid", "anyfault" and faults. Remove system linker build options. "Try" expressions must be simple expressions. Add optimized build to Mac tests. Register int.
assert(false)
only allowed in unused branches or in tests. Compile time failed asserts is a compile time error. Remove current_block_is_target. Bug when assigning an optional from an optional. Remove unused emit_zstring. Simplify phi code. Remove unnecessary unreachable blocks and remove unnecessary current_block NULL assignments. Proper handling of '.' and Win32 '//server' paths. Unify expression and macro blocks in the middle end. Add "no discard" to expression blocks with a return value. Detect "unsigned >= 0" as errors. Fix issue with distinct void as a member
#1147
. Improve callstack debug information
#1184
. Fix issue with absolute output-dir paths. Lambdas were not type checked thoroughly
#1185
. Fix compilation warning
#1187
. Request jump table using @jump for switches. Path normalization - fix possible null terminator out of bounds. Improved error messages on inlined macros.
2024-05-22 18:22:04 +02:00
ct_if.c3t
Dev (
#777
)
2023-06-10 23:16:28 +02:00
ct_memberof.c3t
0.6.0: init_new/init_temp removed. LinkedList API rewritten. List "pop" and "remove" function now return Optionals. RingBuffer API rewritten. Allocator interface changed. Deprecated Allocator, DString and mem functions removed. "identity" functions are now constants for Matrix and Complex numbers.
@default
implementations for interfaces removed.
any*
=>
any
, same for interfaces. Emit local/private globals as "private" in LLVM, following C "static". Updated enum syntax. Add support [rgba] properties in vectors. Improved checks of aliased "void". Subarray -> slice. Fix of llvm codegen enum check. Improved alignment handling. Add --output-dir
#1155
. Removed List/Object append.
GenericList
renamed
AnyList
. Remove unused "unwrap". Fixes to cond. Optimize output in dead branches. Better checking of operator methods. Disallow
any
from implementing dynamic methods. Check for operator mismatch. Remove unnecessary bitfield. Remove numbering in --list* commands Old style enum declaration for params/type, but now the type is optional. Add note on
#1086
. Allow making distinct types out of "void", "typeid", "anyfault" and faults. Remove system linker build options. "Try" expressions must be simple expressions. Add optimized build to Mac tests. Register int.
assert(false)
only allowed in unused branches or in tests. Compile time failed asserts is a compile time error. Remove current_block_is_target. Bug when assigning an optional from an optional. Remove unused emit_zstring. Simplify phi code. Remove unnecessary unreachable blocks and remove unnecessary current_block NULL assignments. Proper handling of '.' and Win32 '//server' paths. Unify expression and macro blocks in the middle end. Add "no discard" to expression blocks with a return value. Detect "unsigned >= 0" as errors. Fix issue with distinct void as a member
#1147
. Improve callstack debug information
#1184
. Fix issue with absolute output-dir paths. Lambdas were not type checked thoroughly
#1185
. Fix compilation warning
#1187
. Request jump table using @jump for switches. Path normalization - fix possible null terminator out of bounds. Improved error messages on inlined macros.
2024-05-22 18:22:04 +02:00
ct_switch_errors.c3
Deprecate :; in $if etc.
2023-03-20 01:03:54 +01:00
ct_switch_more_checks.c3
Remove assert(try). Prevent nextcase with expression if there is no switch. Fix issue with multiple declarations and compile time variables. Nextcase default. Dropped support for non-const-int ranges.
2023-07-11 01:04:35 +02:00
ct_switch_top_level.c3t
Fix void* <=> protocol casts. Fix of tests.
2023-10-13 12:44:58 +02:00
ct_switch_type_check.c3t
Fixes to native backtrace.
2023-11-13 17:20:46 +01:00
ct_switch_type_errors.c3
Prefer
def
2023-06-02 20:08:45 +02:00
ct_switch.c3t
Fixes to native backtrace.
2023-11-13 17:20:46 +01:00
ct_through_constant.c3t
Fix
#806
, and also makes sure that things like FOO.x.a is a compile time value.
2023-07-01 16:29:17 +02:00
ct_value_from_access.c3t
0.5.3: Single-module not respected. Fix issue with compiler defined types. Fix optimization levels for projects. Use GEP i8 on offsets. Optimize foreach on len 1 arrays. Move panic blocks last. Fix generic module wildcard imports. Deprecate init_temp / init_new. Fix issue with macro vaarg and untyped lists. Fix extern const globals.
2024-01-14 15:34:54 +01:00
cttype_reassign.c3t
Further grammar fixes.
2023-04-28 19:11:57 +02:00
mod_ct.c3t
Compile time fmod evaluates to 0
#1195
2024-05-16 14:33:11 +02:00
not_yet_initialized.c3
Fix test.
2022-10-08 22:10:56 +02:00
stringify2.c3t
Change printfln to printfn. Make LLVM 15 tests default.
2023-01-11 18:00:08 +01:00
stringify.c3t
Dev (
#777
)
2023-06-10 23:16:28 +02:00
ternary_folding.c3t
Allow @test with modules. Change name mangling for non exports.
2023-02-20 16:02:30 +01:00
typed_ct_vars.c3t
0.5.3: Single-module not respected. Fix issue with compiler defined types. Fix optimization levels for projects. Use GEP i8 on offsets. Optimize foreach on len 1 arrays. Move panic blocks last. Fix generic module wildcard imports. Deprecate init_temp / init_new. Fix issue with macro vaarg and untyped lists. Fix extern const globals.
2024-01-14 15:34:54 +01:00
typefrom_errors.c3t
Added stringify tests and $typefrom. Bump to 0.3.50.
2022-09-18 20:52:25 +02:00
typefrom.c3t
Added stringify tests and $typefrom. Bump to 0.3.50.
2022-09-18 20:52:25 +02:00
typeof_example.c3t
Default protocols.
Closes
#1039
2023-10-10 23:30:33 +02:00
typeof_from_literal.c3
Updated casts (
#684
)
2022-12-27 14:16:47 +01:00
untyped_conversions.c3t
0.6.0: init_new/init_temp removed. LinkedList API rewritten. List "pop" and "remove" function now return Optionals. RingBuffer API rewritten. Allocator interface changed. Deprecated Allocator, DString and mem functions removed. "identity" functions are now constants for Matrix and Complex numbers.
@default
implementations for interfaces removed.
any*
=>
any
, same for interfaces. Emit local/private globals as "private" in LLVM, following C "static". Updated enum syntax. Add support [rgba] properties in vectors. Improved checks of aliased "void". Subarray -> slice. Fix of llvm codegen enum check. Improved alignment handling. Add --output-dir
#1155
. Removed List/Object append.
GenericList
renamed
AnyList
. Remove unused "unwrap". Fixes to cond. Optimize output in dead branches. Better checking of operator methods. Disallow
any
from implementing dynamic methods. Check for operator mismatch. Remove unnecessary bitfield. Remove numbering in --list* commands Old style enum declaration for params/type, but now the type is optional. Add note on
#1086
. Allow making distinct types out of "void", "typeid", "anyfault" and faults. Remove system linker build options. "Try" expressions must be simple expressions. Add optimized build to Mac tests. Register int.
assert(false)
only allowed in unused branches or in tests. Compile time failed asserts is a compile time error. Remove current_block_is_target. Bug when assigning an optional from an optional. Remove unused emit_zstring. Simplify phi code. Remove unnecessary unreachable blocks and remove unnecessary current_block NULL assignments. Proper handling of '.' and Win32 '//server' paths. Unify expression and macro blocks in the middle end. Add "no discard" to expression blocks with a return value. Detect "unsigned >= 0" as errors. Fix issue with distinct void as a member
#1147
. Improve callstack debug information
#1184
. Fix issue with absolute output-dir paths. Lambdas were not type checked thoroughly
#1185
. Fix compilation warning
#1187
. Request jump table using @jump for switches. Path normalization - fix possible null terminator out of bounds. Improved error messages on inlined macros.
2024-05-22 18:22:04 +02:00
untyped_with_inferred.c3
Updated cast code.
2023-09-12 12:48:52 +02:00