Erro C3018
Moderador: Moderadores
- Gilberto M Silva
- Usuário Nível 3

- Mensagens: 230
- Registrado em: 13 Mar 2007 18:00
- Localização: Natal-RN / Parelhas(RN) / Natal(RN)
- Contato:
Não sei se é o caso dividir os prgs, pois o sistema é formado por apenas 35 prgs, com poucas linhas, uma méida de 400 linhas um pelo outro, que linkado, o exe fica com aproximadamente 550 kbats, esse sistema era em sammer87 estou mudando para clip5.2 com CDX.
Gilberto[]
A cada conversasão realizada conquistamos mais amigos, isto é um lucro inestimável
Clip5.2 DBFCDX
marcolinosilva@click21.com.br gmarcolinosilva@hotmail.com / Skype:gilberto.marcolino
A cada conversasão realizada conquistamos mais amigos, isto é um lucro inestimável
Clip5.2 DBFCDX
marcolinosilva@click21.com.br gmarcolinosilva@hotmail.com / Skype:gilberto.marcolino
Mas veja: o erro é de "Too Many Symbols". Isso significa que o compilador está reclamando que a tabela de símbolos está com sua capacidade esgotada. Ou seja, provavelmente, um dos seus fontes tem uma quantidade de variáveis maior do que o compilador pode suportar para um único objeto. Cada variável tem seu nome e cada nome ocupada um espaço na tabela de símbolos. Por isso o próprio NG recomenda ou particionar o fonte culpado ou então aglomerar algumas variáveis numa matriz, por exemplo.
Um outro fator que acarreta esse tipo de erro é também quando um programa é do tipo monolítico, que tem um fonte chamando todos os demais pelo comando DO. Isso é típico da era Summer'87. O efeito disso é que todos os 35 fontes se tornam um só, o que acaba estourando a capacidade do compilador, porque os 35 PRGs se transformam num único OBJ. Se for isso, a solução não é o particionamento, mas a troca das procedures por funções, compilando os fontes isoladamente, um a um (switch /m do Clipper). Ou então, trocar variáveis por matrizes, que aglomerariam muitas variáves, como eu já disse.
Em suma: diminua a quantidade de símbolos (nomes de variáveis).
Um outro fator que acarreta esse tipo de erro é também quando um programa é do tipo monolítico, que tem um fonte chamando todos os demais pelo comando DO. Isso é típico da era Summer'87. O efeito disso é que todos os 35 fontes se tornam um só, o que acaba estourando a capacidade do compilador, porque os 35 PRGs se transformam num único OBJ. Se for isso, a solução não é o particionamento, mas a troca das procedures por funções, compilando os fontes isoladamente, um a um (switch /m do Clipper). Ou então, trocar variáveis por matrizes, que aglomerariam muitas variáves, como eu já disse.
Em suma: diminua a quantidade de símbolos (nomes de variáveis).
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
- Gilberto M Silva
- Usuário Nível 3

- Mensagens: 230
- Registrado em: 13 Mar 2007 18:00
- Localização: Natal-RN / Parelhas(RN) / Natal(RN)
- Contato:
- Luciano Bonfim
- Usuário Nível 3

- Mensagens: 414
- Registrado em: 23 Ago 2007 09:34
- Localização: Rio de Janeiro / São Paulo
- Contato:
Re: Erro C3018
Caro Amigo,Giovanni escreveu:Estou tendo um erro C3018 - Too many symbols quando compilo meu programa, encontrei um site na internet que informa que é devido ao grande número de variaveis e por isso precisaria reduzir, entretando todas elas são necessárias...
Alguém sabe me ajudar como corrijo este problema?
Obrigado
Existe uma maneira de vc aumentar o tamanho dessa área, veja em: http://www.caclipperwebsite.com/ghost.htm
Muito Obrigado,
Luciano Bonfim de Azevedo
www.bonfim.com.br
luciano@bonfim.com.br
www.linkedin.com/in/lucianobonfim
Skype : lucianobonfim
Luciano Bonfim de Azevedo
www.bonfim.com.br
luciano@bonfim.com.br
www.linkedin.com/in/lucianobonfim
Skype : lucianobonfim
Eu vi essa página e não notei nenhuma dica que pudesse ajudar a aumentar o tamanho da tabela de símbolos do Clipper. Qual é exatamente essa dica? Pode explicar?Existe uma maneira de vc aumentar o tamanho dessa área, veja em: http://www.caclipperwebsite.com/ghost.htm
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
- Gilberto M Silva
- Usuário Nível 3

- Mensagens: 230
- Registrado em: 13 Mar 2007 18:00
- Localização: Natal-RN / Parelhas(RN) / Natal(RN)
- Contato:
Mister Maligno, resolvi, estou substituindo os prgs por funções e eliminando o "DO *.PRG", e o erro desapareceu.
T+ :)Pos
T+ :)Pos
Gilberto[]
A cada conversasão realizada conquistamos mais amigos, isto é um lucro inestimável
Clip5.2 DBFCDX
marcolinosilva@click21.com.br gmarcolinosilva@hotmail.com / Skype:gilberto.marcolino
A cada conversasão realizada conquistamos mais amigos, isto é um lucro inestimável
Clip5.2 DBFCDX
marcolinosilva@click21.com.br gmarcolinosilva@hotmail.com / Skype:gilberto.marcolino
Maravilha! Aliás, se serve de consolo: PROCEDURES é algo que só existe ainda por razões de compatibilidade. Usar funções é bem melhor. 
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
