}
-
+
/*****************************************************************************/
/* code */
/*****************************************************************************/
/* Reenter the lexical level */
ReenterFunctionLevel (D);
- /* Check if the function header contains unnamed parameters. These are
+ /* Check if the function header contains unnamed parameters. These are
* only allowed in cc65 mode.
- */
+ */
if ((D->Flags & FD_UNNAMED_PARAMS) != 0 && (IS_Get (&Standard) != STD_CC65)) {
Error ("Parameter name omitted");
}
/* Allocate code and data segments for this function */
Func->V.F.Seg = PushSegments (Func);
+ /* Allocate a new literal pool */
+ PushLiteralPool (Func);
+
/* If this is a fastcall function, push the last parameter onto the stack */
if (IsQualFastcall (Func->Type) && D->ParamCount > 0) {
/* Eat the closing brace */
ConsumeRCurly ();
+ /* Restore the old literal pool, remembering the one for the function */
+ Func->V.F.LitPool = PopLiteralPool ();
+
/* Switch back to the old segments */
PopSegments ();