• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC SKILL
  3. Lint Manager Outputs

Stats

  • Locked Locked
  • Replies 3
  • Subscribers 142
  • Views 14140
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Lint Manager Outputs

SrBraj
SrBraj over 5 years ago

Hello Cadence Community

I am checking my SKILL script with the Lint Manager which is giving me the following error/warning messages:

i. Error: " line 348 (createTbQrc) : runQrcCheck takes at most 6 non-keyed args : runQrcCheck(pdkLibName componentName aquaQrcCheckLibName outputDir recreateTB counter techLibName layerMapFileName lvsRuleFileName metOptFileName) "

The above line is an Error message by Lint manager, I am not sure that what is the meaning of non-keyed args.

ii. Warning Global: Unrecognized global variables

I am using a variable defined in the .cdsinit file in my script file. For the same variable, I am getting the above warning message. How can I resolve the above warning message?

iii. Error Global: Variables used as both global and local

I also have a GUI created using the SKILL code. A snippet of the code is mentioned below:
procedure( aquaQrcCheckForm()

....

....

....

aquaQrcForm = hiCreateAppForm(
?name 'aquaQrc
?formTitle "QRC Check"
?fields guifields
?initialSize width:(y+yStep)
?callback "aquaQrcCheck()"
)

hiDisplayForm(aquaQrcForm )

))

I am accessing the above UI fields from another SKILL procedure as aquaQrc ~> libName ~> value . 

This error is regarding the use of aquaQrc variable from another SKILL procedure. What is the correct way to accessing the GUI fields value from another procedure?

  • Cancel
Parents
  • SrBraj
    SrBraj over 5 years ago

    I am able to resolve the query # iii by adding the hiGetCurrentForm() as arguement in the callback procedure:

    procedure( aquaQrcCheckForm()

    ....

    ....

    ....

    aquaQrcForm = hiCreateAppForm(
    ?name 'aquaQrc
    ?formTitle "QRC Check"
    ?fields guifields
    ?initialSize width:(y+yStep)
    ?callback "aquaQrcCheck(hiGetCurrentForm())"
    )

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 5 years ago in reply to SrBraj

    Expecting people to debug your lint messages without being able to see the code is a bit optimistic. You wouldn't ask a garage about a fault with a car merely by describing a scratch on the paintwork. Some wild guesses:

    1. The function is defined as runQrcCheck(pdkLibName componentName aquaQrcCheckLibName outputDir recreateTB counter techLibName layerMapFileName lvsRuleFileName metOptFileName) - but you're calling it with runQrcCheck(?pdkLibName ...) - i.e. passing keyword arguments.
    2. Generally global variables should be given  prefix and then you tell Lint what that prefix is - then they can be classed as "OK" and recognised so it doesn't flag them as accidental keywords.
    3. The likely scenario here is that you've used the global variable name in a let or a function argument

    I suggest you post your code if you want more help.

    Andrew.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • SrBraj
    SrBraj over 5 years ago in reply to Andrew Beckett

    Hi Andrew

    Thanks for your quick reply. The problem is solved now and I am getting the 99/100 IQ score for my code.

    Well, there is nothing wrong with going to the garage and enquire about the fault in a car by describing a scratch if it has an expert like you. :)

    The main issue was that the back-up file of the same code was also loaded in the IDE, and because of that, I was unable to resolve it. 

    Thanks once again!!

    Saurabh Raj

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • SrBraj
    SrBraj over 5 years ago in reply to Andrew Beckett

    Hi Andrew

    Thanks for your quick reply. The problem is solved now and I am getting the 99/100 IQ score for my code.

    Well, there is nothing wrong with going to the garage and enquire about the fault in a car by describing a scratch if it has an expert like you. :)

    The main issue was that the back-up file of the same code was also loaded in the IDE, and because of that, I was unable to resolve it. 

    Thanks once again!!

    Saurabh Raj

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information