Skip to content

Commit

Permalink
Move FuncDeclaration::isBuiltin into a free function
Browse files Browse the repository at this point in the history
  • Loading branch information
yebblies committed Feb 20, 2014
1 parent 544577d commit 091a046
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 7 deletions.
10 changes: 5 additions & 5 deletions src/builtin.c
Expand Up @@ -210,14 +210,14 @@ void builtin_init()
* Determine if function is a builtin one that we can
* evaluate at compile time.
*/
BUILTIN FuncDeclaration::isBuiltin()
BUILTIN isBuiltin(FuncDeclaration *fd)
{
if (builtin == BUILTINunknown)
if (fd->builtin == BUILTINunknown)
{
builtin_fp fp = builtin_lookup(mangleExact());
builtin = fp ? BUILTINyes : BUILTINno;
builtin_fp fp = builtin_lookup(fd->mangleExact());
fd->builtin = fp ? BUILTINyes : BUILTINno;
}
return builtin;
return fd->builtin;
}

/**************************************
Expand Down
2 changes: 1 addition & 1 deletion src/declaration.h
Expand Up @@ -547,6 +547,7 @@ enum BUILTIN
};

Expression *eval_builtin(Loc loc, FuncDeclaration *fd, Expressions *arguments);
BUILTIN isBuiltin(FuncDeclaration *fd);

typedef Expression *(*builtin_fp)(Loc loc, FuncDeclaration *fd, Expressions *arguments);
void add_builtin(const char *mangle, builtin_fp fp);
Expand Down Expand Up @@ -665,7 +666,6 @@ class FuncDeclaration : public Declaration
bool isMain();
bool isWinMain();
bool isDllMain();
BUILTIN isBuiltin();
bool isExport();
bool isImportedSymbol();
bool isCodeseg();
Expand Down
2 changes: 1 addition & 1 deletion src/interpret.c
Expand Up @@ -6890,7 +6890,7 @@ Expression *evaluateIfBuiltin(InterState *istate, Loc loc,
size_t nargs = arguments ? arguments->dim : 0;
if (!pthis)
{
if (fd->isBuiltin() == BUILTINyes)
if (isBuiltin(fd) == BUILTINyes)
{ Expressions args;
args.setDim(nargs);
for (size_t i = 0; i < args.dim; i++)
Expand Down

0 comments on commit 091a046

Please sign in to comment.