forked from qt-creator/qt-creator
		
	QmlJS: Fix binding and scoping function expressions.
Reviewed-by: Erik Verbruggen
This commit is contained in:
		@@ -201,6 +201,11 @@ protected:
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    virtual bool visit(AST::FunctionDeclaration *node)
 | 
			
		||||
    {
 | 
			
		||||
        return visit(static_cast<FunctionExpression *>(node));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    virtual bool visit(AST::FunctionExpression *node)
 | 
			
		||||
    {
 | 
			
		||||
        if (node->name && node->name->asString() == _name) {
 | 
			
		||||
            if (checkLookup())
 | 
			
		||||
@@ -328,6 +333,11 @@ protected:
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    virtual bool visit(AST::FunctionDeclaration *node)
 | 
			
		||||
    {
 | 
			
		||||
        return visit(static_cast<FunctionExpression *>(node));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    virtual bool visit(AST::FunctionExpression *node)
 | 
			
		||||
    {
 | 
			
		||||
        Node::accept(node->formals, this);
 | 
			
		||||
        _result.append(node);
 | 
			
		||||
@@ -422,9 +432,12 @@ protected:
 | 
			
		||||
        return true;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // ### Misses function declaration, var declaration
 | 
			
		||||
 | 
			
		||||
    virtual bool visit(FunctionDeclaration *node)
 | 
			
		||||
    {
 | 
			
		||||
        return visit(static_cast<FunctionExpression *>(node));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    virtual bool visit(FunctionExpression *node)
 | 
			
		||||
    {
 | 
			
		||||
        if (containsOffset(node->identifierToken)) {
 | 
			
		||||
            _result.second = node->name->asString();
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user