On 28/07/11 23:52, Andreas Volz wrote:
> Am Thu, 28 Jul 2011 20:17:03 +0900 schrieb Carsten Haitzler (The
> Rasterman):
> 
> I found it while playing with the clock theme
> (trunk/THEMES/darkness/modules/clock.edc)
> 
> See here my changes as minimal example:
> 
>    #if PROFILE == HIGH
>             x
>             buf[0] = 0;
>             if (v < 10) {snprintf(buf, 10, "0%i", v);}
>             else        {snprintf(buf, 10, "%i", v);}
>             set_state(PART:"seconds", buf, 0.0);
>    #endif
> 
> 
> This #if ends always in "true". You see it because edje fails (the "x")
> not interesting if -DPROFILE=HIGH or anything else or nothing.
> 
>    #if PROFILE != HIGH
>             x
>             buf[0] = 0;
>             if (v < 10) {snprintf(buf, 10, "0%i", v);}
>             else        {snprintf(buf, 10, "%i", v);}
>             set_state(PART:"seconds", buf, 0.0);
>    #endif
> 
> This #if ends always in "false". Also not depending on -DPROFILE.
> 
> These are at least my experiments.

Should that even work? I tried with "cpp" and it doesn't work unless I
#define HIGH 24324234 (some number).
and then doing -DPROFILE=HIGH works as expected.

To me, that's the expected result, to be honest, I was surprised cpp
didn't fail with #if PROFILE == HIGH without defining what they expand
to, because they should just expand to:
#if ==
which is bad.

Anyhow, I think it's better to just do: -DPROFILE_HIGH and check if
that's defined using #ifdef or #if defined().

Maybe I'm missing something, dunno, but from what I know, and from what
I've just tested with both epp and cpp, you are just using macros wrong.

--
Tom.

------------------------------------------------------------------------------
Got Input?   Slashdot Needs You.
Take our quick survey online.  Come on, we don't ask for help often.
Plus, you'll get a chance to win $100 to spend on ThinkGeek.
http://p.sf.net/sfu/slashdot-survey
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to