[Magic-dev] Re: Small Magic bug

R. Timothy Edwards tim at opencircuitdesign.com
Thu Nov 1 23:55:48 EDT 2007


Dear Erwin,

> I found a small bug in magic 7.5 which does not exist in magic 7.4.
> I have a techfile in which I name my contacts "co" or "CO". When I do a
>    paint co
> nothing happens.  If I rename the contacts in the tech file to "cont"
> instead of "co" everything works.

There is a "special" type called "connect" (which is irrelevant for
the "paint" command, anyway) that is conflicting with the "co", and
Magic simply assumes the former, never gets around to checking if
there is a conflicting layer type defined in the tech file, and
consequently paints space.

Although I added the type name "connect" in magic version 7.5, this
error also crops up in version 7.4 (and probably all versions) if
you give a layer a name that is a substring of any of the "special"
types "labels", "subcells", or "errors", because magic checks these
type names first.

The quick fix for this is to find the call to LookupStruct() in
commands/CmdSubrs.c (line 414, I think) and change it to "LookupFull",
which requires the "special" types to be spelled out in full.  The
"correct" fix is to search for tile types first, then look for
special types if no matching tile type was found.  I have made this
fix on my computer, but it's not going to make it into a new distribution
for a few days, because I am working on several other code changes at
the moment.
					Regards,
					Tim

+--------------------------------+-------------------------------------+
| Dr. R. Timothy Edwards (Tim)   | email: tim at opencircuitdesign.com    |
| Open Circuit Design, Inc.	 | web:   http://opencircuitdesign.com |
| 22815 Timber Creek Lane        | phone: (301) 528-9364               |
| Clarksburg, MD 20871-4001      | cell:  (240) 401-0616               |
+--------------------------------+-------------------------------------+



More information about the magic-dev mailing list