Browse Source

BLOCKS API: Added a couple of missing simplification steps in the littlefoot compiler

tags/2021-05-28
jules 8 years ago
parent
commit
355addb5c3
1 changed files with 15 additions and 0 deletions
  1. +15
    -0
      modules/juce_blocks_basics/littlefoot/juce_LittleFootCompiler.h

+ 15
- 0
modules/juce_blocks_basics/littlefoot/juce_LittleFootCompiler.h View File

@@ -1516,6 +1516,15 @@ private:
cg.continueTarget = oldContinueTarget;
}
StatementPtr simplify (SyntaxTreeBuilder& stb) override
{
initialiser = initialiser->simplify (stb);
iterator = iterator->simplify (stb);
body = body->simplify (stb);
condition = condition->simplify (stb);
return this;
}
void visitSubStatements (Statement::Visitor& visit) const override
{
visit (condition); visit (initialiser); visit (iterator); visit (body);
@@ -1548,6 +1557,12 @@ private:
bool alwaysReturns() const override { return true; }
StatementPtr simplify (SyntaxTreeBuilder& stb) override
{
returnValue = returnValue->simplify (stb);
return this;
}
void visitSubStatements (Statement::Visitor& visit) const override
{
visit (returnValue);


Loading…
Cancel
Save