This commit is contained in:
Kartik K. Agaram 2021-10-21 20:56:49 -07:00
parent b044bd4264
commit 42002973c1
3 changed files with 26 additions and 2 deletions

View File

@ -260,3 +260,7 @@ real, during a real programming session.
(Also, don't forget to delete the statement you typed in before you move on to (Also, don't forget to delete the statement you typed in before you move on to
trying out the next one.) trying out the next one.)
Runbooks are a handy tool for working with computers. In a runbook you write
instructions to your future self or for others you're working with. They're
instructions for programming people, not computers.

View File

@ -0,0 +1,20 @@
If I encounter an error that looks like this:
fn main: stmt copy: output 'm' not in a register
then I should do the following:
- find the function mentioned (here `main`);
- look for a statement that contains the mentioned output (here `m`) before
the `<-`; and
- replace the statement with a version of the same instruction that writes
to an inout in memory. (Here, replace `m <- copy` with `copy-to m`.)
===
If I encounter an error that looks like this:
label table: get-slice: key not found: copy-to
then I should do the following:
- look for a statement with the same instruction (here `copy-to`) whose
first inout is not a variable stored in memory; and
- email Kartik (http://akkartik.name/contact) to ask why this message is so
much less helpful then the previous one.

View File

@ -1,6 +1,6 @@
fn main { fn main {
var m: int var m: int
var reg/edx: int <- copy 0 var r/edx: int <- copy 0
# insert a single statement below # insert a single statement below
copy-to r, 3
} }