From 0f77b94d22b0bb3cb500e632a45b21b822661f0e Mon Sep 17 00:00:00 2001 From: yann300 Date: Tue, 24 Oct 2017 14:54:30 +0200 Subject: [PATCH 1/2] fix yoyo parsing --- src/app/staticanalysis/modules/similarVariableNames.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/app/staticanalysis/modules/similarVariableNames.js b/src/app/staticanalysis/modules/similarVariableNames.js index ea2c80dbf5..955b8f0223 100644 --- a/src/app/staticanalysis/modules/similarVariableNames.js +++ b/src/app/staticanalysis/modules/similarVariableNames.js @@ -29,11 +29,11 @@ function report (contracts, multipleContractsWithSameName) { var funcName = common.getFullQuallyfiedFuncDefinitionIdent(contract.node, func.node, func.parameters) var hasModifiersComments = '' if (hasModifiers) { - hasModifiersComments = yo`
Note: Modifiers are currently not considered by this static analysis.
` + hasModifiersComments = yo`
Note: Modifiers are currently not considered by this static analysis.
` } var multipleContractsWithSameNameComments = '' if (multipleContractsWithSameName) { - multipleContractsWithSameNameComments = yo`
Note: Import aliases are currently not supported by this static analysis.
` + multipleContractsWithSameNameComments = yo`
Note: Import aliases are currently not supported by this static analysis.
` } var vars = getFunctionVariables(contract, func).map(common.getDeclaredVariableName) From 585c8b3aff3c54dd06b74f9f7ca19532a476892a Mon Sep 17 00:00:00 2001 From: yann300 Date: Tue, 24 Oct 2017 14:58:11 +0200 Subject: [PATCH 2/2] add analysis test --- test-browser/tests/staticanalysis.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/test-browser/tests/staticanalysis.js b/test-browser/tests/staticanalysis.js index d0174ddfa1..8d031d8c6e 100644 --- a/test-browser/tests/staticanalysis.js +++ b/test-browser/tests/staticanalysis.js @@ -11,7 +11,11 @@ contract test1 { address test = tx.origin; } contract test2 {} contract TooMuchGas { uint x; - function() { x++; } + function() { + x++; + uint test; + uint test1; + } }`} ] @@ -38,7 +42,8 @@ function runTests (browser) { .click('#staticanalysisView button') .waitForElementPresent('#staticanalysisresult .warning', 2000, true, function () { dom.listSelectorContains(['browser/Untitled.sol:2:33: Use of tx.origin', - 'Fallback function of contract browser/Untitled.sol:TooMuchGas requires too much gas'], + 'Fallback function of contract browser/Untitled.sol:TooMuchGas requires too much gas', + 'TooMuchGas.(): Variables have very similar names test and test1.'], '#staticanalysisresult .warning', browser, function () { browser.end()