appcache: Make a few local parser functions non-constexpr

This fixes the GCC build, which was failing with errors such as

    ../../content/browser/appcache/appcache_manifest_parser.cc: In function ‘constexpr base::StringPiece content::{anonymous}::TrimToFirstNewLine(base::StringPiece)’:
    ../../content/browser/appcache/appcache_manifest_parser.cc:78:26: error: call to non-constexpr function ‘base::BasicStringPiece<STRING_TYPE> base::BasicStringPiece<STRING_TYPE>::substr(base::BasicStringPiece<STRING_TYPE>::size_type, base::BasicStringPiece<STRING_TYPE>::size_type) const [with STRING_TYPE = std::__cxx11::basic_string<char>; base::BasicStringPiece<STRING_TYPE>::size_type = long unsigned int]’
       return data.substr(skip);
                              ^

which actually makes sense, as base::BasicStringPiece::substr() is not a
constexpr function and is always called from the functions in
appcache_manifest_parser.cc, rendering their own constexpr specifiers
irrelevant.

MSVC also rejects similar code, so I've filed an upstream LLVM bug at
https://bugs.llvm.org/show_bug.cgi?id=39242

Original patch by Maksim Sisov <msisov@igalia.com>, whose original CL ended
up being deleted from Gerrit.

Bug: 819294
Change-Id: I269d35f701ca3fbbdb9c8fed248e80c7c4066633
Reviewed-on: https://chromium-review.googlesource.com/c/1273108
Commit-Queue: Victor Costan <pwnall@chromium.org>
Reviewed-by: Victor Costan <pwnall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#598401}
1 file changed