@@ -921,6 +921,9 @@ pub fn writeInt(comptime T: type, buffer: *[@divExact(T.bit_count, 8)]u8, value:
921
921
pub fn writeIntSliceLittle (comptime T : type , buffer : []u8 , value : T ) void {
922
922
assert (buffer .len >= @divExact (T .bit_count , 8 ));
923
923
924
+ if (T .bit_count == 0 )
925
+ return set (u8 , buffer , 0 );
926
+
924
927
// TODO I want to call writeIntLittle here but comptime eval facilities aren't good enough
925
928
const uint = std .meta .IntType (false , T .bit_count );
926
929
var bits = @truncate (uint , value );
@@ -938,6 +941,9 @@ pub fn writeIntSliceLittle(comptime T: type, buffer: []u8, value: T) void {
938
941
pub fn writeIntSliceBig (comptime T : type , buffer : []u8 , value : T ) void {
939
942
assert (buffer .len >= @divExact (T .bit_count , 8 ));
940
943
944
+ if (T .bit_count == 0 )
945
+ return set (u8 , buffer , 0 );
946
+
941
947
// TODO I want to call writeIntBig here but comptime eval facilities aren't good enough
942
948
const uint = std .meta .IntType (false , T .bit_count );
943
949
var bits = @truncate (uint , value );
@@ -1807,7 +1813,7 @@ test "sliceAsBytes" {
1807
1813
}
1808
1814
1809
1815
test "sliceAsBytes with sentinel slice" {
1810
- const empty_string :[:0 ]const u8 = "" ;
1816
+ const empty_string : [:0 ]const u8 = "" ;
1811
1817
const bytes = sliceAsBytes (empty_string );
1812
1818
testing .expect (bytes .len == 0 );
1813
1819
}
0 commit comments