def METHOD_NAME(self):
    """
    returns a list of LiteralStrings and CMacros after merging every
    consecutive LiteralString
    """
    tmp_res = []
    for e in self.expression:
        if isinstance(e, CStringExpression):
            tmp_res.extend(e.METHOD_NAME())
        else:
            tmp_res.append(e)
    if not tmp_res:
        return []
    result = [tmp_res[0]]
    for e in tmp_res[1:]:
        if isinstance(e, LiteralString) and isinstance(result[-1], LiteralString):
            result[-1] += e
        else:
            result.append(e)
    return result