Author: Andrey Popov
Date: 04:42:53 06/22/05
Go up one level in this thread
On June 22, 2005 at 05:49:49, milix wrote:
>On June 22, 2005 at 05:39:13, Andrey Popov wrote:
>
>>When I tried to compile Fruit 2.1, I found the following error:
>>c:\frusrc\material.cpp(137) : error C2061: syntax error : identifier 'key'
>>c:\frusrc\material.cpp(137) : error C2066: cast to function type is illegal
>>c:\frusrc\material.cpp(137) : error C2107: illegal index, indirection not
>>allowed
>>c:\frusrc\material.cpp(137) : error C2102: '&' requires l-value
>>
>>in the following function:
>>
>>void material_get_info(material_info_t * info, const board_t * board) {
>>
>> uint64 key;
>> entry_t * entry;
>>
>> ASSERT(info!=NULL);
>> ASSERT(board!=NULL);
>>
>> // probe
>>
>> if (UseTable) {
>>
>> Material->read_nb++;
>>
>> key = board->material_key;
>> entry = &Material->table[KEY_INDEX(key)&Material->mask];//error line 137
>>
>> if (entry->lock == KEY_LOCK(key)) {
>>
>> // found
>>
>> Material->read_hit++;
>>
>> *info = *entry;
>>
>> return;
>> }
>> }
>>What is the reason and how to avoid this error?
>
>What is the definition of the (macro?) KEY_INDEX?
#define KEY_INDEX(key) (uint32(key))
This definition is in "hash.h" file.
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.