rokucommunity / rokucommunity/brighterscript

Catch compile error

Open
#934 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
208
Forks
68
Avg merge
8h 39m
Merged PRs (30d)
39

Description

It seems that Roku will throw compile errors when trying to reuse a typed parameter variable name in a for each loop.

Consider this example:

sub testCompileError(item as object)
  for each item in []
  end for
end sub

image

Since item is typed as object, for some reason, Roku has decided to prevent using that same variable in the for each loop, even though developers would expect it to just reuse that item variable.

Reassigning the variable right above the loop does not mitigate the issue either.

sub testCompileError(item as object)
  item = {} ' does not mitigate the issue
  for each item in []
  end for
end sub

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files or tests; begin by locating the TypeScript compiler handling for typed parameters and for each loop variables. Reproduce the BrightScript examples, determine the intended handling of the reported Roku compile error, and confirm the result with a regression test.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
compilers
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.