Euphoria Ticket #769: Lazy Initialization of Constants

We've had issues getting top level initialization correct. To make this simpler, we can create a way to declare initialization to be lazy (perhaps this becomes the default, but it may cause problems). We could use a new with lazy to start constant initialization as lazy.

To implement, we would put the initialization code (typically a function call) for a constant into its own routine. The constant would point to the function in the symbol table as the constant's initialization function. Then we enhance the GLOBAL_INIT_CHECK to call the initialization function when the check finds the constant to be uninitialized.

The main difficulty that I see here is with the translator. It does not currently do any initialization checks.

Details

Type: Feature Request Severity: Normal Category: Language
Assigned To: unknown Status: New Reported Release:
Fixed in SVN #: View VCS: none Milestone:

Search



Quick Links

User menu

Not signed in.

Misc Menu