RESOLVED FIXED 40651
Use "typedef wchar_t JSChar" when compiled with RVCT
https://bugs.webkit.org/show_bug.cgi?id=40651
Summary Use "typedef wchar_t JSChar" when compiled with RVCT
Kwang Yul Seo
Reported 2010-06-15 22:00:00 PDT
Fix Brew MP RVCT build. defined(AEE_STATIC) || defined(DYNAMIC_APP) checks Brew MP.
Attachments
Patch (1.21 KB, patch)
2010-06-15 22:02 PDT, Kwang Yul Seo
no flags
Patch (1.22 KB, patch)
2010-06-15 22:08 PDT, Kwang Yul Seo
no flags
Patch (1.12 KB, patch)
2010-06-17 17:55 PDT, Kwang Yul Seo
loki: review-
Patch (1.79 KB, patch)
2010-08-27 10:51 PDT, Kwang Yul Seo
no flags
Kwang Yul Seo
Comment 1 2010-06-15 22:02:01 PDT
Early Warning System Bot
Comment 2 2010-06-15 22:07:20 PDT
WebKit Review Bot
Comment 3 2010-06-15 22:08:04 PDT
Kwang Yul Seo
Comment 4 2010-06-15 22:08:46 PDT
Created attachment 58852 [details] Patch Oops. ')' was missing.
Laszlo Gombos
Comment 5 2010-06-16 18:36:18 PDT
Is __CC_ARM or __ARMCC__ defined for BREW ? f it is maybe it is better to remove the "&& defined(__SYMBIAN32__)" test and make this rule generic for all RVCT platforms.
Kwang Yul Seo
Comment 6 2010-06-16 18:54:49 PDT
(In reply to comment #5) > Is __CC_ARM or __ARMCC__ defined for BREW ? > > f it is maybe it is better to remove the "&& defined(__SYMBIAN32__)" test and make this rule generic for all RVCT platforms. __CC_ARM or __ARMCC__ is defined when RVCT is used. Any suggestion?
Laszlo Gombos
Comment 7 2010-06-17 01:07:18 PDT
How about this ? - && !((defined(__CC_ARM) || defined(__ARMCC__)) && defined(__SYMBIAN32__)) + && !((defined(__CC_ARM) || defined(__ARMCC__)))
Kwang Yul Seo
Comment 8 2010-06-17 17:46:37 PDT
(In reply to comment #7) > How about this ? > > - && !((defined(__CC_ARM) || defined(__ARMCC__)) && defined(__SYMBIAN32__)) > + && !((defined(__CC_ARM) || defined(__ARMCC__))) Okay. I will update the patch as you suggested.
Kwang Yul Seo
Comment 9 2010-06-17 17:55:54 PDT
Kwang Yul Seo
Comment 10 2010-06-23 23:41:15 PDT
Ping, Laszlo!
Gabor Loki
Comment 11 2010-06-24 01:20:14 PDT
Comment on attachment 59054 [details] Patch The UChar typedef is different in wtf/unicode/qt4/UnicodeQt4.h in case of RVCT. The same type is required for UChar and JSChar as well.
Kwang Yul Seo
Comment 12 2010-08-27 09:49:19 PDT
(In reply to comment #11) > (From update of attachment 59054 [details]) > The UChar typedef is different in wtf/unicode/qt4/UnicodeQt4.h in case of RVCT. The same type is required for UChar and JSChar as well. Why don't we check !defined(__linux__) instead of defined(__SYMBIAN32__)? !defined(__linux__) covers both Symbian and Brew MP. I will modify wtf/unicode/qt4/UnicodeQt4.h as well.
Kwang Yul Seo
Comment 13 2010-08-27 10:51:22 PDT
Gabor Loki
Comment 14 2010-08-31 14:36:48 PDT
> Created an attachment (id=65732) [details] This looks good to me. Although I do not expect any problem, I will test it on Linux tomorrow.
Adam Barth
Comment 15 2010-08-31 19:38:26 PDT
Comment on attachment 65732 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=65732&action=prettypatch > JavaScriptCore/wtf/unicode/qt4/UnicodeQt4.h:59 > -#if defined(Q_OS_WIN) || COMPILER(WINSCW) || (COMPILER(RVCT) && OS(SYMBIAN)) > +#if defined(Q_OS_WIN) || COMPILER(WINSCW) || (COMPILER(RVCT) && !OS(LINUX)) It's unclear to me why we're switching from a whitelist to a blacklist for something that's identified as a hack...
Kwang Yul Seo
Comment 16 2010-08-31 21:41:56 PDT
(In reply to comment #15) > (From update of attachment 65732 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=65732&action=prettypatch > > > JavaScriptCore/wtf/unicode/qt4/UnicodeQt4.h:59 > > -#if defined(Q_OS_WIN) || COMPILER(WINSCW) || (COMPILER(RVCT) && OS(SYMBIAN)) > > +#if defined(Q_OS_WIN) || COMPILER(WINSCW) || (COMPILER(RVCT) && !OS(LINUX)) > It's unclear to me why we're switching from a whitelist to a blacklist for something that's identified as a hack... We can detect Linux with defined(__linux__) and Symbian with defined(__SYMBIAN32__), but there is no such macro in Brew MP. Therefore, it is very hard to check Brew MP in JSStringRef.h. Because Linux is the only exception for now, I think it is okay to switch.
Gabor Loki
Comment 17 2010-09-01 00:35:46 PDT
> > -#if defined(Q_OS_WIN) || COMPILER(WINSCW) || (COMPILER(RVCT) && OS(SYMBIAN)) > > +#if defined(Q_OS_WIN) || COMPILER(WINSCW) || (COMPILER(RVCT) && !OS(LINUX)) > It's unclear to me why we're switching from a whitelist to a blacklist for something that's identified as a hack... I see no problem using this formula. As far as I know RVCT is used for the following target platforms: Symbian, Linux, WinCE, Brew MP. Symbian, WinCE and Brew MP use wchar_t. The only exception is the Linux (which uses uint16_t). Well, it looks like a blacklist, not a whitelist to me.
Kwang Yul Seo
Comment 18 2010-09-01 09:19:10 PDT
Comment on attachment 65732 [details] Patch r?, q? again for review.
Kwang Yul Seo
Comment 19 2010-09-06 13:51:18 PDT
(In reply to comment #14) > > Created an attachment (id=65732) [details] [details] > > This looks good to me. > Although I do not expect any problem, I will test it on Linux tomorrow. Ping. Have you tested the patch on Linux?
Gabor Loki
Comment 20 2010-09-06 14:32:01 PDT
> Ping. Have you tested the patch on Linux? Sorry, I forgot to mention that the patch is OK for RVCT and GCC as well. I am sure Laszlo will give an r+ on it.
Laszlo Gombos
Comment 21 2010-09-22 13:28:05 PDT
Comment on attachment 65732 [details] Patch r=me. I agree that we're switching from white-list to blacklist, but I'm not sure if this is really a hack anymore, despite the comment in the source.
WebKit Commit Bot
Comment 22 2010-09-22 15:05:44 PDT
Comment on attachment 65732 [details] Patch Clearing flags on attachment: 65732 Committed r68087: <http://trac.webkit.org/changeset/68087>
WebKit Commit Bot
Comment 23 2010-09-22 15:05:51 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.