I can answer my own question, I am actually doing m64 by default. But
the compiler has plenty of code that is of this form. We used to
assume ILP64 model, apparently, x86_64 is LP64 model.
Now, can someone show me the following segment of code in
lno/fission.cxx, towards the end of function Form_Loops.
My version has:

      EINDEX16 e2=dep_g_p->Add_Unique_Edge(
        (mUINT32)WN_MAP_Get(dep_graph_map, stmt1),
        (mUINT32)WN_MAP_Get(dep_graph_map, stmt));

Sun

On Tue, Dec 21, 2010 at 1:59 AM, Sun Chan <sun.c...@gmail.com> wrote:
> // the following piece of code gets
> // x.cxx:8: error: cast from ‘void*’ to ‘mINT32’ loses precision
> // I know this could be obvious, and obvious I haven't written real
> code for a long time
> // can someone bear with me and tell me what is the right fix?
> // Also, I thought void* and int has the same size.
> // Thx in advance
> // Sun
>
> typedef signed int mINT32;
>
> extern void* foo(int);
>
> void bar(mINT32 i)
> {
>  mINT32 x;
>  if ((mINT32)foo(x) != i)
>    foo(i);
> }
>

------------------------------------------------------------------------------
Lotusphere 2011
Register now for Lotusphere 2011 and learn how
to connect the dots, take your collaborative environment
to the next level, and enter the era of Social Business.
http://p.sf.net/sfu/lotusphere-d2d
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to