Oi Giovany, obrigado por responder.
Estou compilando via xdev V0.70.
Olha o projeto que criei, com um único PRG. Só existe UMA variável local no projeto e um parâmetro, o mais simples possível.
Deixando somente a função MAIN no PRG, a execução é instantânea. Deixando 10 mil funções no PRG, a execução é praticamente instantânea ainda.
Mas deixando 60 mil funções no PRG, a execução demora 32 segundos.
Segue o projeto completo:
Segue abaixo o fonte completo do programa
#include 'fivewin.ch'
*
*
*
*
FUNCTION Main(cTime01)
LOCAL cTime02:=TIME()
DEFAULT cTime01:=''
cTime01:=SUBSTR(cTime01,1,AT(',',cTime01)-1)
cTime01:=STRZERO(VAL(SUBSTR(cTime01,1,AT(':',cTime01)-1)),2) + SUBSTR(cTime01,AT(':',cTime01))
IF EMPTY(cTime01)
RETURN
ENDIF
?'Hora inicial: '+cTime01,'Hora que EXE realmente carregou: '+cTime02,'Demora para abrir EXE: '+ELAPTIME(cTime01,cTime02)
RETURN
FUNCTION TESTFUNC_00001() ; MSGINFO('','') ; RETURN
FUNCTION TESTFUNC_00002() ; MSGINFO('','') ; RETURN
FUNCTION TESTFUNC_00003() ; MSGINFO('','') ; RETURN
FUNCTION TESTFUNC_00004() ; MSGINFO('','') ; RETURN
FUNCTION TESTFUNC_00005() ; MSGINFO('','') ; RETURN
.
.
.
FUNCTION TESTFUNC_60000() ; MSGINFO('','') ; RETURN
Segue como estou fazendo a chamada do programa
Segue o retorno do programa
Caso alguém possa replicar esse teste e postar os resultados, agradeço. Fiz o mesmo em C#, e não tive o problema descrito, somente em Fivewin.