Corrected a set of regexps in the schematic-to-layout script that

prevented normal x=y type parameters from being parsed.
This commit is contained in:
Tim Edwards 2021-03-11 11:09:37 -05:00
parent 5b8a59c4ad
commit 3bd9adbaf8
3 changed files with 9 additions and 6 deletions

View File

@ -1 +1 @@
8.3.139
8.3.140

View File

@ -53,7 +53,8 @@ proc readspice {netfile} {
# Read data from file. Remove comment lines and concatenate
# continuation lines.
puts stderr "Annotating port orders from $netfile"
puts stdout "Annotating port orders from $netfile"
flush stdout
set fdata {}
set lastline ""
while {[gets $fnet line] >= 0} {
@ -109,6 +110,8 @@ proc readspice {netfile} {
# Make sure pins aren't duplicated by first moving all pin
# indexes above the number of pins to check.
puts stdout "Annotating cell $cell"
flush stdout
set npins [expr {[llength $ftokens] - 1}]
set highport [port last]
set outport $highport
@ -116,7 +119,7 @@ proc readspice {netfile} {
set p [port first]
while {$p != -1 && $p <= $highport} {
if {$p == ""} {
puts stderr "Error: $cellname port numbering failed."
puts stderr "Error: $cell port numbering failed."
break
}
set p1 [port $p next]

View File

@ -215,13 +215,13 @@ proc magic::generate_layout_add {subname subpins complist library} {
}
while {$rest != ""} {
if {[regexp -nocase {([^= \t]+)=\'([^\']+)\'[ \t]*(.*)} $rest \
if {[regexp -nocase {^([^= \t]+)=\'([^\']+)\'[ \t]*(.*)} $rest \
valid pname value rest]} {
lappend paramlist [list $pname "{$value}"]
} elseif {[regexp -nocase {([^= \t]+)=\{([^\}]+)\}[ \t]*(.*)} $rest \
} elseif {[regexp -nocase {^([^= \t]+)=\{([^\}]+)\}[ \t]*(.*)} $rest \
valid pname value rest]} {
lappend paramlist [list $pname "{$value}"]
} elseif {[regexp -nocase {([^= \t]+)=([^= \t]+)[ \t]*(.*)} $rest \
} elseif {[regexp -nocase {^([^= \t]+)=([^= \t]+)[ \t]*(.*)} $rest \
valid pname value rest]} {
lappend paramlist [list $pname $value]
} else {