Maybe you ran configure --fix-includes again after you made the change?  The 
file that you are modifying is the result of running configure, so your changes 
will get clobbered if you run configure again.  Check your file again to verify 
that lines 150 and 176 include the int pointer casts.


--- On Tue, 1/25/11, Outback Dingo <[email protected]> wrote:

From: Outback Dingo <[email protected]>
Subject: Re: [Click] Doing some research
To: "Bobby Longpocket" <[email protected]>
Cc: [email protected]
Date: Tuesday, January 25, 2011, 6:23 AM

On Tue, Jan 25, 2011 at 1:33 AM, Bobby Longpocket <[email protected]> 
wrote:

Dingo:



Click patchless has a problem with 2.6.37.  In radix-tree.h there's a call to a 
macro that ends up trying to dereference a void*.  The C++ compiler doesn't 
like this.  You can apply the following changes to 
click/include/click-linuxmodule/include1/linux/radix-tree.h to make more 
progress with your compilation:




150c150

<       return rcu_dereference(*pslot);

---

>       return (void *)rcu_dereference(*(int **)pslot);

176c176

<       rcu_assign_pointer(*pslot, item);

---

>       rcu_assign_pointer(*(int **)pslot, (int *)item);

ok applied the reference patch to click and now.... still no joy


 In file included from 
/home/dingo/click/include/click-linuxmodule/include1/linux/fs.h:392:0,
                 from 
/home/dingo/click/linuxmodule/../lib/ino.cc:30:/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:
 In function ‘void* 
radix_tree_deref_slot(void**)’:/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9:
 error: ‘void*’ is not a pointer-to-object type
/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9: 
error: invalid type in declaration before ‘=’ 
token/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9:
 error: ‘void*’ is not a pointer-to-object type
/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9: 
error: ‘void*’ is not a pointer-to-object 
type/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9:
 error: ‘void*’ is not a pointer-to-object type
/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9: 
error: expected primary-expression before 
‘typeof’/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9:
 error: expected ‘)’ before ‘typeof’
/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9: 
error: ‘void*’ is not a pointer-to-object 
type/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9:
 error: ‘void*’ is not a pointer-to-object type
/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9: 
error: ‘void*’ is not a pointer-to-object 
type/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9:
 error: expected primary-expression before ‘typeof’
/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9: 
error: expected ‘)’ before 
‘typeof’/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:150:9:
 error: expected ‘)’ before ‘;’ token
/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h: In 
function ‘void radix_tree_replace_slot(void**, 
void*)’:/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:176:2:
 error: ‘void*’ is not a pointer-to-object type
/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:176:2: 
error: ‘void*’ is not a pointer-to-object 
type/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:176:2:
 error: ‘void*’ is not a pointer-to-object type
/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:176:2: 
error: expected primary-expression before 
‘typeof’/home/dingo/click/include/click-linuxmodule/include1/linux/radix-tree.h:176:2:
 error: expected ‘)’ before ‘typeof’
make[3]: *** [/home/dingo/click/linuxmodule/ino.o] Error 1make[2]: *** 
[_module_/home/dingo/click/linuxmodule] Error 2make[2]: Leaving directory 
`/home/dingo/src/linux-source-2.6.37'
make[1]: *** [all] Error 2make[1]: Leaving directory 
`/home/dingo/click/linuxmodule'make: *** [linuxmodule] Error 2




      
_______________________________________________
click mailing list
[email protected]
https://amsterdam.lcs.mit.edu/mailman/listinfo/click

Reply via email to