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 20:11:17 +00:00
Code
Issues
Packages
Projects
Releases
Wiki
Activity
Files
7b516e6113b3c836c5ea0dbd65d00a36891de6bb
c3c
/
test
/
test_suite
/
bitstruct
History
Christoffer Lerno
9f51bfcc10
Support casting bitstructs to bool.
2024-09-19 01:03:06 +02:00
..
address_of_bitstruct.c3
Bitstruct implementation.
2021-11-05 11:59:30 +01:00
anon_bitstruct_name_overlap.c3
Fixes member visibility for anonymous bitstruct. Bitstruct member attributes works. Anonymous bitstruct assignment fixed.
2023-08-03 01:00:30 +02:00
array_with_boolean.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
bistruct_cast_wrong_size.c3
Incorrect cast of bitstructs
#1186
2024-04-26 17:39:30 +02:00
bitfield_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
bitstruct_access_signed.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
bitstruct_anon_in_struct_ok.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. 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-06-12 10:14:26 +02:00
bitstruct_arrays_be.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
bitstruct_arrays.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. 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-06-12 10:14:26 +02:00
bitstruct_be.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. 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-06-12 10:14:26 +02:00
bitstruct_bool.c3t
Support casting bitstructs to bool.
2024-09-19 01:03:06 +02:00
bitstruct_cast_and_back.c3
Bitstruct cast to other bitstruct by way of underlying type would fail
#1159
.
2024-02-26 23:51:14 +01:00
bitstruct_cast_const_init.c3t
Introduce
def
as a trial. Fixup of timeit.
2023-04-21 17:42:38 +02:00
bitstruct_direct_in_struct.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. 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-06-12 10:14:26 +02:00
bitstruct_general.c3
User defined attributes.
2022-05-11 20:55:09 +02:00
bitstruct_in_subarray.c3t
Unified constant handling.
2024-09-13 15:11:15 +02:00
bitstruct_init_bool.c3t
Allow @test with modules. Change name mangling for non exports.
2023-02-20 16:02:30 +01:00
bitstruct_init.c3
Allow omitting
= true
for designated initializers of bitstruct bools.
2024-06-22 15:57:41 +02:00
bitstruct_initializer.c3t
Fix reordering semantics in struct assignment.
2024-09-17 22:41:49 +02:00
bitstruct_intcontainer.c3t
Improve and simplify casts.
2023-03-01 22:43:50 +01:00
bitstruct_ops.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. 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-06-12 10:14:26 +02:00
bitstruct_overlap.c3
Bitstruct implementation.
2021-11-05 11:59:30 +01:00
bitstruct_simple_err_decl.c3
Updated grammar. Removal of elif. Removal of ':' ';' in some ct statements. Empty faults is now an error. Remove "define" for types. Remove "private". Better errors on incorrect bitstruct syntax. Introduction of wildcard type rather than optional wildcard. Removal of scaled vector type. mkdir and rmdir. Disallow define @Foo() = { @inline }. Add handling for @optreturn and change it to @return!. Restrict interface style functions. Updated x64 ABI. stdlib updates to string. Removed deprecated functions. Update how variadics are implemented. Extended error messages. x86 ABI fixes. Shift check fixes. '!' and '?' are flipped. No trailing ',' allowed in functions. Fix to string parsing. Allow
l
suffix. Simplifying flatpath.
any
replaces
variant
,
anyfault
replaces
anyerr
. Allow getting the underlying type of anyfault. De-duplicate string constants. Fix of readme. Extended list. Fix of "(MyEnum)x + 1". Clock and DateTime types. Fixes to array concat.
2023-04-21 10:56:39 +02:00
bitstruct_simple.c3
Add simple bitstruct.
2023-02-18 16:59:52 +01:00
bitstruct_single_error.c3
Bitstruct implementation.
2021-11-05 11:59:30 +01:00
bitstruct_to_int.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
designated_initializer_with_bitstruct.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
embedded_bitstruct.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
invalid_bitstruct_member_types.c3
Refactor protocols.
2023-10-06 22:31:41 +02:00
invalid_bitstruct_name_other_ident.c3
Better error on all upper parameter names. "Upper case" -> "uppercase"
2022-07-26 22:01:23 +02:00
invalid_bitstruct_type.c3
Change anyerror { i64, i64 } -> i64. Cleaned up platform data and max tls / vector align. Initial work on bitstruct (just parsing). Updated try / catch semantics.
2021-08-18 17:31:09 +02:00
invalid_empty_struct_union.c3
Flexible array member added, zero sized structs removed.
2021-12-14 19:00:33 +01:00
missing_bitstruct_type.c3
Bitstruct implementation.
2021-11-05 11:59:30 +01:00
param_bitstruct.c3t
Allow @test with modules. Change name mangling for non exports.
2023-02-20 16:02:30 +01:00