def DaCeSyntaxError(visitor, node, err):
    """ Reports errors with their corresponding file/line information. """
    try:
        line = node.lineno
        col = node.col_offset
    except AttributeError:
        line = 0
        col = 0
    return SyntaxError(err + '\n  in File ' + str(visitor.filename) +
        ', line ' + str(line) + ':' + str(col) + ', in function ' + str(
        visitor.curnode.name if visitor.curnode is not None else visitor.
        program_name))
