picoc: Fix build with gcc15 (#513804)

This commit is contained in:
Peder Bergebakken Sundt
2026-05-01 13:57:07 +00:00
committed by GitHub
2 changed files with 47 additions and 0 deletions
+45
View File
@@ -0,0 +1,45 @@
--- a/interpreter.h
+++ b/interpreter.h
@@ -173,6 +173,7 @@ struct ValueType
};
/* function definition */
+typedef struct Value Value; /* Needed to allow reference before definition */
struct FuncDef
{
struct ValueType *ReturnType; /* the return value type */
@@ -180,7 +181,12 @@ struct FuncDef
int VarArgs; /* has a variable number of arguments after the explicitly specified ones */
struct ValueType **ParamType; /* array of parameter types */
char **ParamName; /* array of parameter names */
- void (*Intrinsic)(); /* intrinsic call address or NULL */
+ void (*Intrinsic)( /* intrinsic call address or NULL */
+ struct ParseState *Parser,
+ Value *ReturnValue,
+ Value **ParamArray,
+ int ArgCount
+ );
struct ParseState Body; /* lexical tokens of the function body if not intrinsic */
};
@@ -610,8 +616,8 @@ void IncludeFile(Picoc *pc, char *Filename);
* void PicocIncludeAllSystemHeaders(); */
/* debug.c */
-void DebugInit();
-void DebugCleanup();
+void DebugInit(Picoc *pc);
+void DebugCleanup(Picoc *pc);
void DebugCheckStatement(struct ParseState *Parser);
--- a/platform/library_unix.c
+++ b/platform/library_unix.c
@@ -1,6 +1,6 @@
#include "../interpreter.h"
-void UnixSetupFunc()
+void UnixSetupFunc(Picoc *pc)
{
}
+2
View File
@@ -18,6 +18,8 @@ stdenv.mkDerivation {
buildInputs = [ readline ];
patches = [ ./gcc15-fixes.patch ];
makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
env.NIX_CFLAGS_COMPILE = toString (