def get_compilation_errors(stdout):
    """ Helper that extracts compilation errors from the build's stdout """
    Error_Start = '***'
    Error_End = '\\r\\n\\r\\n'
    stdout_index = stdout.find(Error_Start)
    errors = []
    while stdout_index >= 0:
        # Partition stdout to extract the error from between Error_Start and Error_End
        parts = stdout[stdout_index + len(Error_Start):].partition(Error_End)
        # Add this error to the error list
        errors.append(parts[0])
        # Search for more errors in the rest of stdout that is beyond the previous error
        parts_index = parts[2].find(Error_Start)
        if parts_index > 0:
            # Increment the index in stdout by adding the error partitions that were already used
            stdout_index += parts_index+len(parts[0]) + len(parts[1])
        else:
            break
    return errors