Repository navigation
Kiln 2.1.1
Kiln 2.1.1 — programs over several files, kits and written type arguments in Kiln 2; configurable shortcuts in Studio.
This is the first published build since 2.0.0, so it carries 2.1.0 as well. A program that built under 2.0.0 still builds and still behaves.
Fixed
- A record field of type
T?was given half the room it needs, so writing one overwrote whatever came after it. Present in 2.0.0. - Nested
?.built aT??, andOrderByon aboolputtruefirst. - A Windows cross-build failed to link with a mingw older than binutils 2.42 (
relocation truncated to fit … .debug_line_str). Debug information for a Windows target is now DWARF 4. - The debugger could not stop in, or read, a program built by a compiler that defaults to position-independent executables, such as Ubuntu's clang. A debug build is now always linked
-no-pie;--releaseis unchanged.
Kiln 2
- A program can span several files: a
usingthat names a file beside the program brings it in, and the debugger stops in the file a function is written in. - A kit's
.kdecldeclarations reach Kiln 2 —using Kiln.Win;brings thewinkit's records, constants and functions.CallConv.Systemis stdcall on 32-bit Windows. - Type arguments can be written where there is nothing to infer them from:
Make<List<int>>(). - A
T?stored where aTis wanted — a local, an assignment, a return, a field — is its value or a stop, as an argument already was. - A handler wired at run time takes the grid's row, as a lambda or a method, and
-=unwires a method again. kiln migratekeeps a 1.x unit a unit, a c-record'sbyte[N]inline, and an empty dictionary's value type.
Studio
- File has New Project, Open Project, Open File and Close Project.
- Every shortcut is a setting, under Settings → Keyboard shortcuts, recorded by pressing the keys.
- Kiln 2 code is coloured by the compiler's own lexer, through the language server's semantic tokens.
- The toolbar no longer repeats Save, Undo and Redo, and the welcome wordmark no longer covers the tagline.
Checksums are beside each archive.