mirror of
https://github.com/arnaucube/circom.git
synced 2026-02-06 18:56:40 +01:00
better info in runtime constraint assertion
This commit is contained in:
@@ -1046,6 +1046,8 @@ function execSignalAssign(ctx, ast) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function execConstrain(ctx, ast) {
|
function execConstrain(ctx, ast) {
|
||||||
|
ast.fileName = ctx.fileName;
|
||||||
|
ast.filePath = ctx.filePath;
|
||||||
const a = exec(ctx, ast.values[0]);
|
const a = exec(ctx, ast.values[0]);
|
||||||
if (ctx.error) return;
|
if (ctx.error) return;
|
||||||
const b = exec(ctx, ast.values[1]);
|
const b = exec(ctx, ast.values[1]);
|
||||||
|
|||||||
@@ -422,11 +422,13 @@ function genConstrain(ctx, ast) {
|
|||||||
if (ctx.error) return;
|
if (ctx.error) return;
|
||||||
const b = gen(ctx, ast.values[1]);
|
const b = gen(ctx, ast.values[1]);
|
||||||
if (ctx.error) return;
|
if (ctx.error) return;
|
||||||
return `ctx.assert(${a}, ${b})`;
|
const strErr = ast.fileName +": "+ast.first_line;
|
||||||
|
return `ctx.assert(${a}, ${b}, \"${strErr}\")`;
|
||||||
}
|
}
|
||||||
|
|
||||||
function genSignalAssignConstrain(ctx, ast) {
|
function genSignalAssignConstrain(ctx, ast) {
|
||||||
return genVarAssignement(ctx, ast) + ";\n" + genConstrain(ctx, ast);
|
// return genVarAssignement(ctx, ast) + ";\n" + genConstrain(ctx, ast);
|
||||||
|
return genVarAssignement(ctx, ast);
|
||||||
}
|
}
|
||||||
|
|
||||||
function genVarAddAssignement(ctx, ast) {
|
function genVarAddAssignement(ctx, ast) {
|
||||||
|
|||||||
Reference in New Issue
Block a user