Replace list calls by static_list calls when possible

        >>> import gast as ast
        >>> from pythran import passmanager, backend
        >>> node = ast.parse("def foo(n): x = __builtin__.list(n); x[0] = 0; return __builtin__.tuple(x)")
        >>> pm = passmanager.PassManager("test")
        >>> _, node = pm.apply(ListToTuple, node)
        >>> print(pm.dump(backend.Python, node))
        def foo(n):
            x = __builtin__.pythran.static_list(n)
            x[0] = 0
            return __builtin__.tuple(x)

        >>> node = ast.parse("def foo(n): x = __builtin__.list(n); x[0] = 0; return x")
        >>> pm = passmanager.PassManager("test")
        >>> _, node = pm.apply(ListToTuple, node)
        >>> print(pm.dump(backend.Python, node))
        def foo(n):
            x = __builtin__.list(n)
            x[0] = 0
            return x

def visit_Assign(self, node):
        """
        Replace list calls by static_list calls when possible

        >>> import gast as ast
        >>> from pythran import passmanager, backend
        >>> node = ast.parse("def foo(n): x = __builtin__.list(n); x[0] = 0; return __builtin__.tuple(x)")
        >>> pm = passmanager.PassManager("test")
        >>> _, node = pm.apply(ListToTuple, node)
        >>> print(pm.dump(backend.Python, node))
        def foo(n):
            x = __builtin__.pythran.static_list(n)
            x[0] = 0
            return __builtin__.tuple(x)

        >>> node = ast.parse("def foo(n): x = __builtin__.list(n); x[0] = 0; return x")
        >>> pm = passmanager.PassManager("test")
        >>> _, node = pm.apply(ListToTuple, node)
        >>> print(pm.dump(backend.Python, node))
        def foo(n):
            x = __builtin__.list(n)
            x[0] = 0
            return x
        """
        self.generic_visit(node)
        if node.value not in self.fixed_size_list:
            return node

        node.value = self.convert(node.value)
        return node