Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Uncaught Error: argument bit ratio not found

未关闭
#600 6 条评论 1 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
35/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
停滞
技术栈
javascript

调研方向

首先,使用 setGraphical(true) 运行提供的 GPU.js 浏览器复现,然后将其与非图形情况进行比较。检查 FunctionBuilder.assignArgumentBitRatio,并单独调查空返回示例;完成的标准是所报告的两个案例都不再抛出所描述的错误。

由索引模型根据 Issue 内容生成。

描述

What is wrong?

Adding certain custom functions causes the error: Uncaught Error: argument bit ratio not found

Where does it happen?

Not system specific

How do we replicate the issue?

<script>
const gpu = new GPU()

gpu.addFunction(function f(x, y) {
    return y[0]
})

const test = gpu.createKernel(function (a) {
    f(1, a)
}).setOutput([4, 4]).setGraphical(true)

test([0])
</script>

Setting setGraphical(true) causes the error for some reason

How important is this (1-5)?

3 or 4 maybe?

Expected behavior (i.e. solution)

No error

Other Comments

In FunctionBuilder.assignArgumentBitRatio, replacing calleeNode.argumentBitRatios[i] with calleeNode.argumentBitRatios[argumentIndex] should fix the problem.

Also, why does having a blank return statement cause an error

const test = gpu.createKernel(function () {
    // stuff
    return
}).setOutput([4, 4]).setGraphical(true)
test() // Uncaught Error: Unexpected return statement on ...

when there is no error with having no return statements

const test = gpu.createKernel(function () {
    // stuff
}).setOutput([4, 4]).setGraphical(true)
test()
主要语言
JavaScript
星标
15.5k
派生
663
PR 合并指标
30 天内没有已合并 PR

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

gpujs/gpu.js 的其他 Issue

查看 gpujs/gpu.js 的全部 Issue

相似的 Issue

更多 JavaScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。