[fpc-pascal] Calling function pointer to main program

leledumbo leledumbo_cool at yahoo.co.id
Thu Jan 2 22:04:06 CET 2020

> I know I can use -XM to set another function name besides "main" but then
how do I call back the original function "main" later?

I quickly analyze the generated assembly when you don't pass -XM:

.globl	main
	.type	main, at function
	.type	PASCALMAIN, at function

vs when you do (-XMmymain):

.globl	mymain
	.type	mymain, at function
	.type	PASCALMAIN, at function

so basically the original main does nothing and jump straight to PASCALMAIN,
which is always there. So you can make your own main in a separate file that
must be linked in during linking which calls whatever name you pass to -XM.

Sent from: http://free-pascal-general.1045716.n5.nabble.com/

More information about the fpc-pascal mailing list