[m-rev.] Change compiler output to use `.' as module separator

Ralph Becket rafe at cs.mu.OZ.AU
Fri Jan 17 16:45:36 AEDT 2003


Fergus Henderson, Friday, 17 January 2003:
> On 17-Jan-2003, Ralph Becket <rafe at cs.mu.OZ.AU> wrote:
> > Fergus Henderson, Friday, 17 January 2003:
> > > 
> > > I'd try renaming the '=..' module as just '.' ;-)
> > when I compile it (using either `mmc --make dot_separator' or
> > `mmake dot_separator.depend; mmake dot_separator') I get
> > Mercury/os/dot_separator_init.o: In function `init_modules_type_tables_0':
> > Mercury/os/dot_separator_init.o(.text+0x1c): undefined reference to `mercury__dot_separator______init_type_tables'
> > Mercury/os/dot_separator_init.o(.text+0x21): undefined reference to `mercury__dot_separator__foo____init_type_tables'
> 
> This is a design limitation: c2init assumes that any occurrence of "."
> in the file name is a module separator.
> 
> We ought to check for special characters in module names during parsing.

Okay, I'll document and comment out the problem cases in the test
module.  To be honest, I think if you use freaky characters in your
symbol names you're just asking for trouble...
--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list