| Index: source/common/uts46.cpp | 
| diff --git a/source/common/uts46.cpp b/source/common/uts46.cpp | 
| index 13a1f246c21cc91ee67a2aa2bafe76db85c5bd14..7bc4f925caca0ba26bababf5596f18423a571a5b 100644 | 
| --- a/source/common/uts46.cpp | 
| +++ b/source/common/uts46.cpp | 
| @@ -1,3 +1,5 @@ | 
| +// Copyright (C) 2016 and later: Unicode, Inc. and others. | 
| +// License & terms of use: http://www.unicode.org/copyright.html | 
| /* | 
| ******************************************************************************* | 
| *   Copyright (C) 2010-2015, International Business Machines | 
| @@ -68,7 +70,7 @@ isASCIIOkBiDi(const char *s, int32_t length); | 
| IDNA::~IDNA() {} | 
|  | 
| void | 
| -IDNA::labelToASCII_UTF8(const StringPiece &label, ByteSink &dest, | 
| +IDNA::labelToASCII_UTF8(StringPiece label, ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const { | 
| if(U_SUCCESS(errorCode)) { | 
| UnicodeString destString; | 
| @@ -78,7 +80,7 @@ IDNA::labelToASCII_UTF8(const StringPiece &label, ByteSink &dest, | 
| } | 
|  | 
| void | 
| -IDNA::labelToUnicodeUTF8(const StringPiece &label, ByteSink &dest, | 
| +IDNA::labelToUnicodeUTF8(StringPiece label, ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const { | 
| if(U_SUCCESS(errorCode)) { | 
| UnicodeString destString; | 
| @@ -88,7 +90,7 @@ IDNA::labelToUnicodeUTF8(const StringPiece &label, ByteSink &dest, | 
| } | 
|  | 
| void | 
| -IDNA::nameToASCII_UTF8(const StringPiece &name, ByteSink &dest, | 
| +IDNA::nameToASCII_UTF8(StringPiece name, ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const { | 
| if(U_SUCCESS(errorCode)) { | 
| UnicodeString destString; | 
| @@ -98,7 +100,7 @@ IDNA::nameToASCII_UTF8(const StringPiece &name, ByteSink &dest, | 
| } | 
|  | 
| void | 
| -IDNA::nameToUnicodeUTF8(const StringPiece &name, ByteSink &dest, | 
| +IDNA::nameToUnicodeUTF8(StringPiece name, ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const { | 
| if(U_SUCCESS(errorCode)) { | 
| UnicodeString destString; | 
| @@ -131,19 +133,19 @@ public: | 
| IDNAInfo &info, UErrorCode &errorCode) const; | 
|  | 
| virtual void | 
| -    labelToASCII_UTF8(const StringPiece &label, ByteSink &dest, | 
| +    labelToASCII_UTF8(StringPiece label, ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const; | 
|  | 
| virtual void | 
| -    labelToUnicodeUTF8(const StringPiece &label, ByteSink &dest, | 
| +    labelToUnicodeUTF8(StringPiece label, ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const; | 
|  | 
| virtual void | 
| -    nameToASCII_UTF8(const StringPiece &name, ByteSink &dest, | 
| +    nameToASCII_UTF8(StringPiece name, ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const; | 
|  | 
| virtual void | 
| -    nameToUnicodeUTF8(const StringPiece &name, ByteSink &dest, | 
| +    nameToUnicodeUTF8(StringPiece name, ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const; | 
|  | 
| private: | 
| @@ -154,7 +156,7 @@ private: | 
| IDNAInfo &info, UErrorCode &errorCode) const; | 
|  | 
| void | 
| -    processUTF8(const StringPiece &src, | 
| +    processUTF8(StringPiece src, | 
| UBool isLabel, UBool toASCII, | 
| ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const; | 
| @@ -251,25 +253,25 @@ UTS46::nameToUnicode(const UnicodeString &name, UnicodeString &dest, | 
| } | 
|  | 
| void | 
| -UTS46::labelToASCII_UTF8(const StringPiece &label, ByteSink &dest, | 
| +UTS46::labelToASCII_UTF8(StringPiece label, ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const { | 
| processUTF8(label, TRUE, TRUE, dest, info, errorCode); | 
| } | 
|  | 
| void | 
| -UTS46::labelToUnicodeUTF8(const StringPiece &label, ByteSink &dest, | 
| +UTS46::labelToUnicodeUTF8(StringPiece label, ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const { | 
| processUTF8(label, TRUE, FALSE, dest, info, errorCode); | 
| } | 
|  | 
| void | 
| -UTS46::nameToASCII_UTF8(const StringPiece &name, ByteSink &dest, | 
| +UTS46::nameToASCII_UTF8(StringPiece name, ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const { | 
| processUTF8(name, FALSE, TRUE, dest, info, errorCode); | 
| } | 
|  | 
| void | 
| -UTS46::nameToUnicodeUTF8(const StringPiece &name, ByteSink &dest, | 
| +UTS46::nameToUnicodeUTF8(StringPiece name, ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const { | 
| processUTF8(name, FALSE, FALSE, dest, info, errorCode); | 
| } | 
| @@ -401,7 +403,7 @@ UTS46::process(const UnicodeString &src, | 
| } | 
|  | 
| void | 
| -UTS46::processUTF8(const StringPiece &src, | 
| +UTS46::processUTF8(StringPiece src, | 
| UBool isLabel, UBool toASCII, | 
| ByteSink &dest, | 
| IDNAInfo &info, UErrorCode &errorCode) const { | 
|  |