[M3devel] Confusing, but non-critical bug...

Mika Nystrom mika at async.caltech.edu
Sun Apr 26 07:28:25 CEST 2009


So I have a library, built against m3tk.  Everything compiles, but
when cm3 tries to "ar" the library:


new "TypeTranslator.io" -> archiving libsstubgen.a

Fatal Error: incomplete library

missing compiled interface "M3AST_all.io" imported by:  M3AST_SM_F.i3  
   M3AST_PG.m3  M3AST_SM.m3  TypeNames.m3  AstToVal.m3  AstToType.m3  
   M3ASTScopeNames.m3  
M3AST_PG_M.i3: missing object types:  _t1ee311ce  
imported by:  M3AST_PG.m3  
M3AST_all.i3: missing object types:  _t8eb32ef8  _t9ffde2a4  _ta2581bcc  
   _t52bfa811  _t249b6ddc  _t172a75ba  _t774a90ea  _tc92a7e8c  _t1d23b703  
   _t2812849  _t1796950e  _te47b91c  _tccbf0da  _tb53c334a  _tf38721e4  
   _tbbcfc2cb  _teec6ca97  
imported by:  M3AST_PG.m3  AstToType.m3  AstToVal.m3  M3AST_SM.m3  
   M3AST_SM_F.i3  
missing compiled interface "M3AST_PG_M.io" imported by:  M3AST_PG.m3  

 seconds  #times  operation
    0.06      22  inhaling library link info
    0.01      27  checking old link info
    0.21     896  merging new link info
    0.05       4  garbage collection
---------------------------------------------------
    0.34          TOTAL

rm m3make.args
cd ../src

So I add "IMPORT M3AST_all;" to one of my interfaces (it's not used
there at all):

(1943)trs80:~/t-cm3/mscheme/sstubgen/src>cm3 -x 
--- building in ../FreeBSD4 ---

ignoring override("sstubgen", "/home/mika/t-cm3/mscheme")

new source -> compiling TypeTranslator.i3
"../src/TypeTranslator.i3", line 12: warning: not used (M3AST_all)
1 warning encountered
new source -> compiling TypeTranslator.m3
"../src/TypeTranslator.m3", line 353: warning: not used (Add)
1 warning encountered
new opaque info -> recompiling TypeTranslator.m3
"../src/TypeTranslator.m3", line 353: warning: not used (Add)
1 warning encountered
new "TypeTranslator.io" -> archiving libsstubgen.a
(1944)trs80:~/t-cm3/mscheme/sstubgen/src>

Hmmmmmmmmmmmmm....... is anyone interested in looking at this?  
As I said, it's non-critical (I can get things working, clearly,
even with the bug present), but it's very confusing.  I have to
import an interface I'm not using...why?  Where to begin looking?

     Mika




More information about the M3devel mailing list