Benjamin Bannier

Results 155 issues of Benjamin Bannier

In the current implementation of literal search mode we simply`advance` the input by one byte until the given production can be parsed, e.g., [here](https://github.com/zeek/spicy/blob/ec00098525b99cd1dc524933c0beb7a8b94df6c3/spicy/toolchain/src/compiler/codegen/parser-builder.cc#L973). While this works it very likely...

Enhancement

With #1092 we now omit debug information from Spicy and HILTI libraries in `Release` builds. We should as a follow-up also omit debug information from HLTO files generated by e.g.,...

`Builder::addTmp` adds a suffix if if another identifier with the same name is found in the scope, but it does not take identifiers in outer scopes into account. This can...

Bug
Codegen

Some protocols specify that certain protocol bits should be aligned in a certain way, e.g., at a multiple of 4 bytes. Currently users need to compute these offsets themself, but...

Enhancement
Feature Request

With #1074 we recently made `%random-access` an implicit unit feature so that its code is only active if any related functionality is used. We then e.g., emit additional code to...

Enhancement

We currently assign a linker scope for each imported module which should ensure global state from different module instances is not shared. We should add a test to validate that...

Testing / CI / Release

We allow `&requires` as a unit attribute, but will only evaluate it as a post-condition. This makes writing precondition checks for unit parameters slightly awkward, e.g., one needs to write...

Enhancement

`bytes` currently support parsing with `&until` and `&until-including` where both forms consume the delimiter. We should consider adding a `&until-excluding` which parses until a delimiter, but does not consume it...

Enhancement

Currently the following code passes validation, but fails with an internal error when compiled: ```.r # file: /tmp/bitfield.spicy module foo; type X = bitfield(32) { x: 0..4; }; ``` ```...

Diagnostics

As of c895cf08bb27dd3ce963b59311d1e5bb4482ede3 the following Spicy code ```.r module test; global x: int32; x = 32; global y = x; print(x, y); ``` produces the output ```.console (32, 0) ```...

Bug
Codegen