better info in runtime constraint assertion

This commit is contained in:
Jordi Baylina
2019-09-15 10:47:52 +02:00
parent 680e3fe139
commit 67a35ee400
2 changed files with 6 additions and 2 deletions

View File

@@ -1046,6 +1046,8 @@ function execSignalAssign(ctx, ast) {
}
function execConstrain(ctx, ast) {
ast.fileName = ctx.fileName;
ast.filePath = ctx.filePath;
const a = exec(ctx, ast.values[0]);
if (ctx.error) return;
const b = exec(ctx, ast.values[1]);

View File

@@ -422,11 +422,13 @@ function genConstrain(ctx, ast) {
if (ctx.error) return;
const b = gen(ctx, ast.values[1]);
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) {
return genVarAssignement(ctx, ast) + ";\n" + genConstrain(ctx, ast);
// return genVarAssignement(ctx, ast) + ";\n" + genConstrain(ctx, ast);
return genVarAssignement(ctx, ast);
}
function genVarAddAssignement(ctx, ast) {