Ignore:
Timestamp:
Aug 30, 2012, 4:41:29 PM (13 years ago)
Author:
[email protected]
Message:

Ambiguous operator[] after r127191 on some compiler
https://bugs.webkit.org/show_bug.cgi?id=95509

Patch by Benjamin Poulain <[email protected]> on 2012-08-30
Reviewed by Simon Fraser.

Source/JavaScriptCore:

On some compilers, the operator[] conflicts with the Obj-C++ operators. This attempts to solve
the issue.

  • runtime/JSString.h:

(JSC::jsSingleCharacterSubstring):
(JSC::jsString):
(JSC::jsSubstring8):
(JSC::jsSubstring):
(JSC::jsOwnedString):

Source/WTF:

  • wtf/text/WTFString.h:

(WTF::String::characterAt): At this as a synonym to operator[] to attempt a build fix.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/runtime/JSString.h

    r127191 r127212  
    348348        JSGlobalData* globalData = &exec->globalData();
    349349        ASSERT(offset < static_cast<unsigned>(s.length()));
    350         UChar c = s[offset];
     350        UChar c = s.characterAt(offset);
    351351        if (c <= maxSingleCharacterString)
    352352            return globalData->smallStrings.singleCharacterString(globalData, c);
     
    397397            return globalData->smallStrings.emptyString(globalData);
    398398        if (size == 1) {
    399             UChar c = s[0];
     399            UChar c = s.characterAt(0);
    400400            if (c <= maxSingleCharacterString)
    401401                return globalData->smallStrings.singleCharacterString(globalData, c);
     
    423423            return globalData->smallStrings.emptyString(globalData);
    424424        if (length == 1) {
    425             UChar c = s[offset];
     425            UChar c = s.characterAt(offset);
    426426            if (c <= maxSingleCharacterString)
    427427                return globalData->smallStrings.singleCharacterString(globalData, c);
     
    438438            return globalData->smallStrings.emptyString(globalData);
    439439        if (length == 1) {
    440             UChar c = s[offset];
     440            UChar c = s.characterAt(offset);
    441441            if (c <= maxSingleCharacterString)
    442442                return globalData->smallStrings.singleCharacterString(globalData, c);
     
    451451            return globalData->smallStrings.emptyString(globalData);
    452452        if (size == 1) {
    453             UChar c = s[0];
     453            UChar c = s.characterAt(0);
    454454            if (c <= maxSingleCharacterString)
    455455                return globalData->smallStrings.singleCharacterString(globalData, c);
Note: See TracChangeset for help on using the changeset viewer.