Lyricdev
GitHub

LYR-MIG0110

a file without an entry

hint · spec 14-cli

A note of lyric fix --from-4: a single file has no main. Lyric 4 ran it as a library of a host; Lyric 5 asks a single file for its entry.

Explanation

Lyric 4 compiled such a file to bytecode, and a host loaded it and called its functions. Lyric 5 builds a single file as a program, and refuses one without main (LYR-SEM0021).

A library is a package in Lyric 5: lyric new --lib lays one out, and lyric build --lib makes a static library and its header for a host in C. Or give the file a main.

Example

by hand[LYR-MIG0110] main.lyr:1:1: this file has no 'main': Lyric 4 ran it as a library of a host, and Lyric 5 asks a single file for its entry — make it a package with a library target, as 'lyric new --lib' does, or give it a 'main'