On 15/09/10 18:12, Andrew Beverley wrote:
On Wed, 2010-09-15 at 02:06 +0000, Amos Jeffries wrote:
On Tue, 14 Sep 2010 23:55:20 +0100, Andrew Beverley<[email protected]>
wrote:
  * Config.accessList.outgoingTos, Config.accessList.clientsideTos,
Config.accessList.outgoingNfmark, Config.accessList.clientsideNfmark
can
become members of the Qos scope Config object. All the parsing /free
stuff
can be moved there too with some #define parse_...() etc for the legacy
parser.


I've moved all the configuration variables and functions to the Qos
scope. I have renamed parse_acl_tos(acl_tos ** head) as
Ip::Qos::Config::parseConfigAclTos(acl_tos ** head).

However, I'm unable to compile because of the following error:

Qos.cc: In member function ‘void
Ip::Qos::Config::parseConfigAclTos(acl_tos**)’:
Qos.cc:377: error: argument of type ‘void (Ip::Qos::Config::)(void*)’
does
not match ‘void (*)(void*)’

The code at line 377 is:

CBDATA_INIT_TYPE_FREECB(acl_tos, freedConfigAclTos);

I have

CBDATA_TYPE(acl_tos);

specified before the parseConfigAclTos function.

Could you give me any ideas as to what I am doing wrong here? If you
need me to send through any more of the code then please let me know.

Do you have this with a cast?
  #define parse_acl_tos(X) Ip::Qos::Config::parseConfigAclTos((acl_tos
**)X)

with the cf.data.pre "TYPE: acl_tos" unchanged.

No, I had changed it. However, I have now changed it back to the above,
but still get the same error. Any other ideas?

Qos.cc: In member function ‘void Ip::Qos::Config::parseConfigAclTos(acl_tos**)’:
Qos.cc:377: error: argument of type ‘void (Ip::Qos::Config::)(void*)’ does not 
match ‘void (*)(void*)’

I have attached my current Qos.cc and Qos.h

Thanks,

Andy


Darn CBDATA strikes again. What the hell, lets skip this shuffle change then and get the rest of the work in separately.

Amos
--
Please be using
  Current Stable Squid 2.7.STABLE9 or 3.1.8
  Beta testers wanted for 3.2.0.2

Reply via email to