Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: C++ standard question

Author: Mario Antonio F.

Date: 13:44:15 08/29/05

Go up one level in this thread


g++ needs help in order to convert a volatile data_t object into a data_t
object.

Try

typedef struct basedata {
    int a;
    int b;
    basedata(void) : a(0), b(0) {};
    basedata(const basedata &bd) : a(bd.a), b(bd.b) {};
    basedata(volatile basedata &bd) : a(bd.a), b(bd.b) {};
} data_t;

That should be able to work for you.

Mario Antonio


On August 29, 2005 at 16:15:30, Gian-Carlo Pascutto wrote:

>typedef struct {
>    int a;
>    int b;
>} data_t;
>
>typedef struct
>{
>    volatile data_t datalist[CONSTANT];
>}
>bigstruct_t;
>
>data_t get_data(int i)
>{
>    return globalpointer->bigstruct.datalist[i];
>}
>
>Apparently GNU C++ refuses to compile this in C++ mode (works fine when
>compiling as C code). Any proposed fixes?
>
>a.c: In function `data_s get_data(int)':
>a.c:443: error: no matching function for call to `data_s::._47(volatile
>   data_s&)'
>b.h:133: error: candidates are: data_s::._47(const data_s&)
>
>--
>GCP



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.