Hi, Gustavo. I've fixed warnings in edje_entry.c as rev 83033. Thanks.
On Sunday, January 20, 2013, Gustavo Sverzut Barbieri wrote: > Hi, > > Today compiling efl with clang some warnings shows. While there are > some false alarms with EINA_INLINE macros (I'll try to check what to > do about those), some are valid. > > == eet_chipher.c eet_decipher() == > lib/eet/eet_cipher.c:1096:8: warning: variable 'opened' is used > uninitialized > whenever 'if' condition is true [-Wsometimes-uninitialized] > if (!ret) > ^~~~ > lib/eet/eet_cipher.c:1180:8: note: uninitialized use occurs here > if (opened) > ^~~~~~ > lib/eet/eet_cipher.c:1096:4: note: remove the 'if' if its condition is > always > false > if (!ret) > ^~~~~~~~~ > lib/eet/eet_cipher.c:1092:8: warning: variable 'opened' is used > uninitialized > whenever 'if' condition is true [-Wsometimes-uninitialized] > if ((tmp_len & 0x1F) != 0) > ^~~~~~~~~~~~~~~~~~~~~ > lib/eet/eet_cipher.c:1180:8: note: uninitialized use occurs here > if (opened) > ^~~~~~ > lib/eet/eet_cipher.c:1092:4: note: remove the 'if' if its condition is > always > false > if ((tmp_len & 0x1F) != 0) > ^~~~~~~~~~~~~~~~~~~~~~~~~~ > lib/eet/eet_cipher.c:1130:4: note: variable 'opened' is declared here > int opened = 0; > ^ > 2 warnings generated. > > > this file is a horror story of using 2 systems. It's leaking the ssl > and gnutls stuff with the goto on_error. The first 'if (!ret) goto > error' happens BEFORE opened was declared... but goto uses that. > > Who wrote this file please rewrite this bit using 2 different > functions, one for gnutls and another for openssl, handle memory and > errors right. Then call them from eet_decipher(). > > > == evas_image_load_psd.c == > bin/evas/loaders/psd/evas_image_load_psd.c:374:70: warning: expression > result > unused [-Wunused-value] > for (x = 0; x < (unsigned int)bps2; x += bpp, > shortptr) > > ^~~~~~~~ > 1 warning generated. > > shortptr is in the for(), but not being changed. Later on in the code it > does: > > newval = *shortptr * ((unsigned > short*)data)[y + x + 3]; > > using the same ptr. Likely shortptr needs to be incremented, but who > wrote this code please check. > > This error is also present in > modules/evas/loaders/psd/evas_image_load_psd.c > > > == dns.c == > > horror story, warnings everywhere, with gcc, clang... can't we have a > sane dns implementation? I know we got this from someone else, but > what's the difficulty in doing it with our tech? > > == ecore_x_randr_12.c == > lib/ecore_x/xlib/ecore_x_randr_12.c:1204:30: warning: comparison of > constant > 4294967295 with expression of type 'Ecore_X_Randr_Orientation' (aka > 'enum > _Ecore_X_Randr_Orientation') is always false > [-Wtautological-constant-out-of-range-compare] > if (orientation == Ecore_X_Randr_Unset) > > unset is -1, while orientation is an enum without that value. Some > compilers will just remove this check, as the value can't exist. > Either convert orientation to 'int' (be warned of ABI break), or add > Ecore_X_Randr_Unset to enum (also should break ABI). > > > == edje_entry.c == > lots of conversion that are suspicious. We need to check if the enums > match perfectly: > > lib/edje/edje_entry.c:2921:62: warning: implicit conversion from > enumeration > type 'Edje_Text_Autocapital_Type' (aka 'enum > _Edje_Text_Autocapital_Type') > to different enumeration type 'Ecore_IMF_Autocapital_Type' > [-Wenum-conversion] > ecore_imf_context_autocapital_type_set(en->imf_context, > autocapital_type); > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ^~~~~~~~~~~~~~~~ > lib/edje/edje_entry.c:2940:13: warning: implicit conversion from > enumeration > type 'Ecore_IMF_Autocapital_Type' to different enumeration type > 'Edje_Text_Autocapital_Type' (aka 'enum _Edje_Text_Autocapital_Type') > [-Wenum-conversion] > return ecore_imf_context_autocapital_type_get(en->imf_context); > ~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > lib/edje/edje_entry.c:3050:66: warning: implicit conversion from > enumeration > type 'Edje_Input_Panel_Lang' (aka 'enum _Edje_Input_Panel_Lang') to > different enumeration type 'Ecore_IMF_Input_Panel_Lang' > [-Wenum-conversion] > ecore_imf_context_input_panel_language_set(en->imf_context, lang); > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~ > lib/edje/edje_entry.c:3115:73: warning: implicit conversion from > enumeration > type 'Edje_Input_Panel_Return_Key_Type' (aka 'enum > _Edje_Input_Panel_Return_Key_Type') to different enumeration type > 'Ecore_IMF_Input_Panel_Return_Key_Type' [-Wenum-conversion] > ecore_imf_context_input_panel_return_key_type_set(en->imf_context, > return_key_type); > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ^~~~~~~~~~~~~~~ > lib/edje/edje_entry.c:3133:13: warning: implicit conversion from > enumeration > type 'Ecore_IMF_Input_Panel_Return_Key_Type' to different > enumeration type > 'Edje_Input_Panel_Return_Key_Type' (aka 'enum > _Edje_Input_Panel_Return_Key_Type') [-Wenum-conversion] > return > ecore_imf_context_input_panel_return_key_type_get(en->imf_context); > ~~~~~~ > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > lib/edje/edje_entry.c:3546:64: warning: implicit conversion from > enumeration > type 'Edje_Input_Panel_Layout' (aka 'enum _Edje_Input_Panel_Layout') > to > different enumeration type 'Ecore_IMF_Input_Panel_Layout' > [-Wenum-conversion] > ecore_imf_context_input_panel_layout_set(en->imf_context, layout); > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~~ > lib/edje/edje_entry.c:3564:13: warning: implicit conversion from > enumeration > type 'Ecore_IMF_Input_Panel_Layout' to different enumeration type > 'Edje_Input_Panel_Layout' (aka 'enum _Edje_Input_Panel_Layout') > [-Wenum-conversion] > return ecore_imf_context_input_panel_layout_get(en->imf_context); > ~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 7 warnings generated. > > == edje_load.c == > > Similar to edje_entry.c, need to check if the enums match. > > lib/edje/edje_load.c:1773:53: warning: implicit conversion from > enumeration type > 'Edje_Aspect_Control' (aka 'enum _Edje_Aspect_Control') to different > enumeration type 'Evas_Aspect_Control' (aka 'enum > _Evas_Aspect_Control') > [-Wenum-conversion] > evas_object_size_hint_aspect_set(obj, it->aspect.mode, it->aspect.w,... > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~^~~~ > > == eeze_scanner.c == > > Abuse of some variables? I don't get the logic in there, clang doesn't as > well: > bin/eeze/eeze_scanner.c:298:43: warning: implicit conversion from > enumeration > type 'Eeze_Scanner_Event_Type' to different enumeration type > 'Eeze_Udev_Event' [-Wenum-conversion] > if (ev == EEZE_UDEV_EVENT_ONLINE) ev = EEZE_SCANNER_EVENT_TYPE_ADD; > ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~ > bin/eeze/eeze_scanner.c:299:49: warning: implicit conversion from > enumeration > type 'Eeze_Scanner_Event_Type' to different enumeration type > 'Eeze_Udev_Event' [-Wenum-conversion] > else if (ev == EEZE_UDEV_EVENT_OFFLINE) ev = > EEZE_SCANNER_EVENT_TYPE_REMOVE; > ~ > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > bin/eeze/eeze_scanner.c:301:23: warning: implicit conversion from > enumeration > type 'Eeze_Udev_Event' to different enumeration type > 'Eeze_Scanner_Event_Type' [-Wenum-conversion] > event_send(device, ev, EINA_TRUE); > ~~~~~~~~~~ ^~ > bin/eeze/eeze_scanner.c:347:30: warning: implicit conversion from > enumeration > type 'Eeze_Udev_Event' to different enumeration type > 'Eeze_Scanner_Event_Type' [-Wenum-conversion] > event_send(device, ev, EINA_FALSE); > ~~~~~~~~~~ ^~ > bin/eeze/eeze_scanner.c:370:30: warning: implicit conversion from > enumeration > type 'Eeze_Udev_Event' to different enumeration type > 'Eeze_Scanner_Event_Type' [-Wenum-conversion] > event_send(device, ev, EINA_FALSE); > ~~~~~~~~~~ ^~ > > Would be nice if someone could check those. > > -- > Gustavo Sverzut Barbieri > http://profusion.mobi embedded systems > -------------------------------------- > MSN: barbi...@gmail.com <javascript:;> > Skype: gsbarbieri > Mobile: +55 (19) 9225-2202 > > > ------------------------------------------------------------------------------ > Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, > MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current > with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft > MVPs and experts. ON SALE this month only -- learn more at: > http://p.sf.net/sfu/learnmore_123012 > _______________________________________________ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net <javascript:;> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > ------------------------------------------------------------------------------ Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122412 _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel