On 01/05/13 14:47, Carsten Haitzler (The Rasterman) wrote: > On Wed, 01 May 2013 14:37:37 +0100 Tom Hacohen <tom.haco...@samsung.com> said: > >> On 01/05/13 14:17, Carsten Haitzler (The Rasterman) wrote: >>> On Wed, 01 May 2013 14:03:42 +0100 Tom Hacohen <tom.haco...@samsung.com> >>> said: >>> >>>> On 01/05/13 14:07, Carsten Haitzler (The Rasterman) wrote: >>>>> On Wed, 01 May 2013 13:52:50 +0100 Tom Hacohen <tom.haco...@samsung.com> >>>>> said: >>>>> >>>>>> On 01/05/13 13:54, Carsten Haitzler (The Rasterman) wrote: >>>>>>> On Wed, 01 May 2013 11:00:01 +0100 Tom Hacohen <tom.haco...@samsung.com> >>>>>>> said: >>>>>>> >>>>>>>> On 01/05/13 10:58, Carsten Haitzler (The Rasterman) wrote: >>>>>>>>> On Wed, 01 May 2013 10:08:48 +0100 Tom Hacohen >>>>>>>>> <tom.haco...@samsung.com> said: >>>>>>>>> >>>>>>>>>> On 30/04/13 18:48, Carsten Haitzler (The Rasterman) wrote: >>>>>>>>>>> On Tue, 30 Apr 2013 15:15:05 +0100 Tom Hacohen >>>>>>>>>>> <tom.haco...@samsung.com> said: >>>>>>>>>>> >>>>>>>>>>>> Where did you get that on? >>>>>>>>>>>> Anyhow, what do you think about changing it to unsigned wchar_t? >>>>>>>>>>> >>>>>>>>>>> on my pentium-m test machine... unicode val 0 was < 0 and thus >>>>>>>>>>> walked below the array. yes. literally a negative. wouldnt that be >>>>>>>>>>> wuchar_t or something? as wchar_t .. is a typedef... :) >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Hm... Annoying. There's no wuchar_t though. >>>>>>>>> >>>>>>>>> then we have... a problem... and it requires we check for < 0. :( >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> I think me might be better off casting to unsigned. Damn you people for >>>>>>>> not doing all the char type unsigned, wth?! >>>>>>> >>>>>>> chances are the compiler will produce the exact same code regardless... >>>>>>> a cast or what is there now. >>>>>>> >>>>>> >>>>>> Nah, the whole point of the cast is to convert it to unsigned, I'm quite >>>>>> certain the compiler is capable of doing that. >>>>> >>>>> but your casting inside the func to just avoid if (x < 0)... which a >>>>> compiler will figure out to be the same as the cast to unsigned... >>>>> >>>>> >>>> >>>> The cast will work for unicode values that are greater than the signed >>>> limit (less than 0), while the if just fail for them. >>> >>> there are no unicode values of that magnitude... unicode by definition >>> doesnt even get close to using the most significant bit... :) it's by >>> definition an invalid code if < 0 (for 32bit signed)... >>> >>> >> >> Oh, forgot to mention, I was thinking about boxes where wchar_t is >> signed and 16bit. :) There we'll have trouble. >> If you got negative values it must mean you've reached big enough >> unicode values, so the issue I'm describing is indeed real. > > on boxes where its 16bit.. we will have problems... because unicode does not > fit into 16bit.... we explicitly MUSt have it be a 32bit type in order to have > enough space to store the hmmm... 22? bits needed for unicode? quick check... > 10ffff is the top unicode value... that means 21bits... so unicode needs > 21bits. if we have 16bit wchar_t's we are not able to do unicode. signed or > not > is irrelevant here. if its 32bit... we don't care :) >
Well, a subset of... :) But anyhow, how did you get your issue then? That it was negative? That's what I'm interested in, as that means it's a path we actually get to. -- Tom. ------------------------------------------------------------------------------ Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET Get 100% visibility into your production application - at no cost. Code-level diagnostics for performance bottlenecks with <2% overhead Download for free and get started troubleshooting in minutes. http://p.sf.net/sfu/appdyn_d2d_ap1 _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel