UGLOBAL is not "undefined global". Variables with SCLASS_UGLOBAL will
be placed into .bss section and initialized to zero by loader. This
can reduce the object file size.

2010/8/9 Sun Chan <sun.c...@gmail.com>:
> Folks,
>
> Someone asked me this question and I'm not sure I know the exact
> reason why. May be someone can help.
>
> In wfe_decl.cxx, function
> static void
> Add_Inito_For_Tree (tree init, tree decl, ST *st)
>
> The symbol, if initiailzed by user to zero, FE will change the storage
> class to undefined global. Why?
>
> Thx in advance.
>
> Sun
>
> Here is the code inside that function:
>
>       Set_ST_init_value_zero(st);
>        if (ST_sclass(st) == SCLASS_DGLOBAL)
>            Set_ST_sclass(st, SCLASS_UGLOBAL);
>        return;
>    }
> #endif
>    aggregate_inito = New_INITO (st);
>    not_at_root = FALSE;
>
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by
>
> Make an app they can't live without
> Enter the BlackBerry Developer Challenge
> http://p.sf.net/sfu/RIM-dev2dev
> _______________________________________________
> Open64-devel mailing list
> Open64-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/open64-devel
>



-- 
Regards,
Lai Jian-Xin

------------------------------------------------------------------------------
This SF.net email is sponsored by 

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to