| 749 | } |
| 750 | |
| 751 | void fxLinkLocals(txMachine* the, txSlot* module) |
| 752 | { |
| 753 | txSlot* transfer; |
| 754 | txSlot* local; |
| 755 | txSlot* from; |
| 756 | txSlot* import; |
| 757 | txSlot* closure; |
| 758 | |
| 759 | transfer = mxModuleTransfers(module)->value.reference->next; |
| 760 | while (transfer) { |
| 761 | local = mxTransferLocal(transfer); |
| 762 | if (local->kind != XS_NULL_KIND) { |
| 763 | from = mxTransferFrom(transfer); |
| 764 | if (from->kind != XS_NULL_KIND) { |
| 765 | import = mxTransferImport(transfer); |
| 766 | if (import->kind != XS_NULL_KIND) |
| 767 | fxLinkTransfer(the, from, import->value.symbol, transfer); |
| 768 | else |
| 769 | fxLinkNamespace(the, from, transfer); |
| 770 | closure = mxTransferClosure(transfer); |
| 771 | closure->flag |= XS_DONT_SET_FLAG; |
| 772 | } |
| 773 | } |
| 774 | transfer = transfer->next; |
| 775 | } |
| 776 | } |
| 777 | |
| 778 | void fxLinkModules(txMachine* the, txSlot* queue) |
| 779 | { |
no test coverage detected