This lambda has two variables named 'dmgType'

Please specify version and format if asking for help, or apply optional tags above:
Twine Version: 2.3.8
Story Format: Harlowe 3.1.0

(set: $item to (dm:
	"dmg", (dm:
		"physical", 1,
		"fire", 1,
(for: each _dmgType, ...(datanames: $item's dmg))[
	_dmgType = (print: _dmgType of $item's dmg)

The above code creates an error: This lambda has two variables named 'dmgType'. If I replace _dmgType with _dmgtype, then there is no error, and everything works as intended.

Am I doing something wrong, or is this a bug? Anyone else run into this? If it is a bug, does anyone know the best way to report it? It looks like the Harlowe bitbucket is being deleted soon, so Iā€™m not sure if I should report it there.ā€™ā€™


You can report it on the issues page:

After some testing it appears that the name of the temporary variable supplied for the each argument of the (for:) macro can only contain lower-case letters, any variable name that includes upper-case letters will result in that error message.

This is likely a bug, which I strongly suggest to report on the issue page referenced by James.

Great, thanks all. I reported it as a bug on as suggested.