diff options
author | Balajiganapathi S <balajiganapathi.s@gmail.com> | 2017-11-18 00:55:07 +0800 |
---|---|---|
committer | Alex Beregszaszi <alex@rtfs.hu> | 2017-11-22 10:07:56 +0800 |
commit | d102deaec90f6f5bfe38140b459a05215d3254f9 (patch) | |
tree | a6f8f5df73bbe5454fe472d4d80042d5a071d8d3 /libsolidity/analysis/ConstantEvaluator.h | |
parent | c0b49694518d333a8ad62623321f839fc3b4bc6a (diff) | |
download | dexon-solidity-d102deaec90f6f5bfe38140b459a05215d3254f9.tar dexon-solidity-d102deaec90f6f5bfe38140b459a05215d3254f9.tar.gz dexon-solidity-d102deaec90f6f5bfe38140b459a05215d3254f9.tar.bz2 dexon-solidity-d102deaec90f6f5bfe38140b459a05215d3254f9.tar.lz dexon-solidity-d102deaec90f6f5bfe38140b459a05215d3254f9.tar.xz dexon-solidity-d102deaec90f6f5bfe38140b459a05215d3254f9.tar.zst dexon-solidity-d102deaec90f6f5bfe38140b459a05215d3254f9.zip |
Detect cyclic constant definitions
Diffstat (limited to 'libsolidity/analysis/ConstantEvaluator.h')
-rw-r--r-- | libsolidity/analysis/ConstantEvaluator.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libsolidity/analysis/ConstantEvaluator.h b/libsolidity/analysis/ConstantEvaluator.h index 42ccfe7e..6725d610 100644 --- a/libsolidity/analysis/ConstantEvaluator.h +++ b/libsolidity/analysis/ConstantEvaluator.h @@ -38,8 +38,9 @@ class TypeChecker; class ConstantEvaluator: private ASTConstVisitor { public: - ConstantEvaluator(Expression const& _expr, ErrorReporter& _errorReporter): - m_errorReporter(_errorReporter) + ConstantEvaluator(Expression const& _expr, ErrorReporter& _errorReporter, size_t _newDepth = 0): + m_errorReporter(_errorReporter), + m_depth(_newDepth) { _expr.accept(*this); } @@ -51,6 +52,8 @@ private: virtual void endVisit(Identifier const& _identifier); ErrorReporter& m_errorReporter; + /// Current recursion depth. + size_t m_depth; }; } |