keep symbol table entries uncleared till whole compilation is completed.
Linux - GeneralThis Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
keep symbol table entries uncleared till whole compilation is completed.
I'm doing a project to develop a compiler in fedoracore4.Bison is used to generate the parser.Language I'm concentrating is more or less similar to ada. The thing is that when another program is refernced from current program,i tried to compile the former from within the compilation of the former using system(command).It worked.But when the control returns, the symbol table entries corresponding to the already compiled program gets cleared.. Is there any way to keep the symbols as such until the whole compilation is completed?
IT'LL BE VERY HELPFUL IF ANYONE COULD GIVE ME SOME GUIDANCE REGARDING THIS..THANK YOU IN ADVANCE....
If you use a technique like system(), then you are invoking an entirely separate process to do the work. Therefore, the entire world(!) of that child-process is (of course ...) totally isolated from your own.
If you need to retain information from the compilation, then you'll have to take an entirely different approach: you'll have to maintain (within the context of a single(!) process), a push-down stack of Bison parser contexts, invoking the parser recursively. And, you'll need to engineer strategic points within (the grammar of ...) each context by which the nested contexts can "tell the world about" your shared symbols.
If you use a technique like system(), then you are invoking an entirely separate process to do the work. Therefore, the entire world(!) of that child-process is (of course ...) totally isolated from your own.
If you need to retain information from the compilation, then you'll have to take an entirely different approach: you'll have to maintain (within the context of a single(!) process), a push-down stack of Bison parser contexts, invoking the parser recursively. And, you'll need to engineer strategic points within (the grammar of ...) each context by which the nested contexts can "tell the world about" your shared symbols.
Could you please make it more clear... I didn't completely get what you meant.. Howw to return the stack from one context to another??
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.