Thread: Need Help!
View Single Post
Old 11-08-2002, 09:24 PM   #2
Loriel
Member
 
Join Date: May 2002
Posts: 49
Loriel is on a distinguished road
Your problem is in line 5797 of act_wiz.c.

The word "doublexp" is not being recognised by the compiler.

This usually arises because you are using a function that is "not known" at this point - generally because it lies in a different file.

This problem is solved by "declaring" that function in the main header file (merc.h, mud.h, or whatever your version is called) - this effectively tells the compiler "Don't worry about it now - it'll get sorted out later (at linking)".

Alternatively the function you are referring to might occur later in the same file - similar solution, declare it which means "Don't worry about it, it will get fixed later".

Declaring means just entering the opening line of the function, including the parameter/argument types, followed by a semicolon - eg:
void my_function(int, char);

Thus the problem usually arises because the "other" function has not been declared in the header file, or an out-of-date version of the header file is used somewhere in the code (ie you should have ensured it was all updated by using "make clean"), or possibly the other file where it is actually found hasn't been included (ie the "new" file hasn't been added to the list of .o files in the makefile).

However, it's also worth checking if you have a typo on that line - ie it's looking for the "wrong thing" in some way.

If none of these works, post the offending line (with a few lines either side).
Loriel is offline   Reply With Quote