rdmd --main

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Mon Nov 22 11:28:51 PST 2010


On 11/22/10 12:53 PM, spir wrote:
> Hello,
>
>
> The rdmd option --main is really helpful to test modules independently (it adds an empty main() to prevent the linker from crying). An issue is that each time we switch between .d files that have no main() (modules in tended for export) and app files that have one, this option must be set or removed (else the linker complains for having 2 main()).
> This is not very practicle for rapid edit-test cycles -- for "exploratory" programming in general. Would it be difficult for rdmd to detect whether a main is already present? It is not a big issue anyway -- just in case would be easy.

That feature could be added in several ways.

1. Cooperate with the compiler - have the compiler detect whether or not 
main() exists.

2. Write a tokenizer (parser is not really needed) and have it identify 
the occurrence of main with one of the appropriate signatures at top level.

3. Use compiler's json output.

4. Use a low-tech search such as sed to find main.

I fear that 2-4 would slow things down and add complexity. Probably 1 
would be the best choice. I'll ask Walter.


Andrei


More information about the Digitalmars-d mailing list