Index: mttroot/mtt/bin/trans/m/ibg2abg.m ================================================================== --- mttroot/mtt/bin/trans/m/ibg2abg.m +++ mttroot/mtt/bin/trans/m/ibg2abg.m @@ -137,12 +137,12 @@ n_named_ports = 0; ## get labelled ports for [bond, bond_name] = comp if (index(bond_name, "bond") == 1) - if (! exist("bond.label")) - bond.label = "[]"; + if (! isfield (bond, "label")) + bond.label = "[]" endif if (! strcmp(bond.label, "[]")) n_named_ports += 1; port_label = bond.label; endif @@ -150,10 +150,12 @@ eval(sprintf("comp.%s = bond;", bond_name)); endfor ## attach labels to unlabelled ports if (n_named_ports == 0) + mtt_info(sprintf("Defaulting all ports on junction %s to 'in'", \ + comp_name), infofile); for [bond, bond_name] = comp if (index(bond_name, "bond") == 1) bond.label = "in"; endif eval(sprintf("comp.%s = bond;", bond_name)); @@ -165,13 +167,13 @@ if (index(bond_name, "bond") == 1) bond.label = port_label; endif eval(sprintf("comp.%s = bond;", bond_name)); endfor - elseif (n_named_ports != bond.n_bonds) + elseif (n_named_ports != comp.n_bonds) mtt_error(sprintf("Junction must have 0,1 or %i port labels", \ - n_bonds), errorfile); + comp.n_bonds), errorfile); endif else ## component is not a junction for [bond, bond_name] = comp