Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Does anyone out there use PC-LINT?

Does anyone out there use PC-LINT?

Scheduled Pinned Locked Moved The Lounge
c++announcementphphtmldatabase
15 Posts 6 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    Anna Jayne Metcalfe
    wrote on last edited by
    #1

    I've got an article to write. :cool: In my last job we started using PC-Lint[^] to identify potential problems in the code. Unfortunately, it's a command line tool, and not at all easy to integrate into an IDE for more than single files. However, among the spin-offs of ResOrg[^] are classes to parse Visual C++ project and solution/workspace files. With that functionality available I was able to write a command line utility to produce a PC-Lint run on an entire project or workspace. Believe me that's really useful if you have a large project and limited resources! The results it produces are in linked HTML or XML files:

    • Sample HTML output[^]
    • Sample XML output[^]

    The good news is my former company has agreed to let me release the source publicly...it doesn't contain any company IPR and this way they won't have to maintain it themselves. :) I'm hoping to write an article on this in the next month or so, but in the meantime, any suggestions are welcome. :cool: Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

    B L C G J 5 Replies Last reply
    0
    • A Anna Jayne Metcalfe

      I've got an article to write. :cool: In my last job we started using PC-Lint[^] to identify potential problems in the code. Unfortunately, it's a command line tool, and not at all easy to integrate into an IDE for more than single files. However, among the spin-offs of ResOrg[^] are classes to parse Visual C++ project and solution/workspace files. With that functionality available I was able to write a command line utility to produce a PC-Lint run on an entire project or workspace. Believe me that's really useful if you have a large project and limited resources! The results it produces are in linked HTML or XML files:

      • Sample HTML output[^]
      • Sample XML output[^]

      The good news is my former company has agreed to let me release the source publicly...it doesn't contain any company IPR and this way they won't have to maintain it themselves. :) I'm hoping to write an article on this in the next month or so, but in the meantime, any suggestions are welcome. :cool: Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

      B Offline
      B Offline
      Bassam Abdul Baki
      wrote on last edited by
      #2

      The help file or readme text has documentation on how to integrate it in the Visual Studio IDE and run it on entire projects. Also, their website has a link to an extrernal page that will integrate the F1 command with the help file, when the error is selected in the IDE's Output tab, so that a description of the error appears. Bassam "For that one fraction of a second, you were open to options you would never have considered. That is the exploration that awaits you. Not mapping stars and studying nebula, but charting the unknown possibilities of existence." - Q (Star Trek: The Next Generation)

      A 1 Reply Last reply
      0
      • B Bassam Abdul Baki

        The help file or readme text has documentation on how to integrate it in the Visual Studio IDE and run it on entire projects. Also, their website has a link to an extrernal page that will integrate the F1 command with the help file, when the error is selected in the IDE's Output tab, so that a description of the error appears. Bassam "For that one fraction of a second, you were open to options you would never have considered. That is the exploration that awaits you. Not mapping stars and studying nebula, but charting the unknown possibilities of existence." - Q (Star Trek: The Next Generation)

        A Offline
        A Offline
        Anna Jayne Metcalfe
        wrote on last edited by
        #3

        Hi Bassam, I found the per project integration crashed VC6 when I tried it! Per file integration was OK though. :confused: There's also nothing that works on a solution or workspace level, and we also needed something to run as part of the build process outside of the IDE... Having HTML and XML output also gave us a way to browse the results easier, without having to open individal text output files in Explorer. :cool: Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

        B 2 Replies Last reply
        0
        • A Anna Jayne Metcalfe

          Hi Bassam, I found the per project integration crashed VC6 when I tried it! Per file integration was OK though. :confused: There's also nothing that works on a solution or workspace level, and we also needed something to run as part of the build process outside of the IDE... Having HTML and XML output also gave us a way to browse the results easier, without having to open individal text output files in Explorer. :cool: Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

          B Offline
          B Offline
          Bassam Abdul Baki
          wrote on last edited by
          #4

          Hmmm. Works on my machine. Not my code. Sorry. I seem to recall that you need to create a project_name.lnt or filename.lnt file for each one. Basically, you'll need to add three menu items to your external tools menu (four if you add the help). One to generate the *.lnt files for you and the other two to parse per file or project. I'm not sure if it was per project or workspace. When I go back to the office on Friday I can check. Unless somebody else here posts an answer sooner. Bassam "For that one fraction of a second, you were open to options you would never have considered. That is the exploration that awaits you. Not mapping stars and studying nebula, but charting the unknown possibilities of existence." - Q (Star Trek: The Next Generation)

          1 Reply Last reply
          0
          • A Anna Jayne Metcalfe

            I've got an article to write. :cool: In my last job we started using PC-Lint[^] to identify potential problems in the code. Unfortunately, it's a command line tool, and not at all easy to integrate into an IDE for more than single files. However, among the spin-offs of ResOrg[^] are classes to parse Visual C++ project and solution/workspace files. With that functionality available I was able to write a command line utility to produce a PC-Lint run on an entire project or workspace. Believe me that's really useful if you have a large project and limited resources! The results it produces are in linked HTML or XML files:

            • Sample HTML output[^]
            • Sample XML output[^]

            The good news is my former company has agreed to let me release the source publicly...it doesn't contain any company IPR and this way they won't have to maintain it themselves. :) I'm hoping to write an article on this in the next month or so, but in the meantime, any suggestions are welcome. :cool: Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

            L Offline
            L Offline
            leppie
            wrote on last edited by
            #5

            An after you fix the "problems", does it still work? C is art, not style ;p top secret xacc-ide 0.0.1

            A 1 Reply Last reply
            0
            • A Anna Jayne Metcalfe

              I've got an article to write. :cool: In my last job we started using PC-Lint[^] to identify potential problems in the code. Unfortunately, it's a command line tool, and not at all easy to integrate into an IDE for more than single files. However, among the spin-offs of ResOrg[^] are classes to parse Visual C++ project and solution/workspace files. With that functionality available I was able to write a command line utility to produce a PC-Lint run on an entire project or workspace. Believe me that's really useful if you have a large project and limited resources! The results it produces are in linked HTML or XML files:

              • Sample HTML output[^]
              • Sample XML output[^]

              The good news is my former company has agreed to let me release the source publicly...it doesn't contain any company IPR and this way they won't have to maintain it themselves. :) I'm hoping to write an article on this in the next month or so, but in the meantime, any suggestions are welcome. :cool: Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

              C Offline
              C Offline
              Christopher Duncan
              wrote on last edited by
              #6

              Nice work, Anna. I've seen their ads forever. As a seasoned developer, what's your take on their product in the "worth the expenditure / not worth the expenditure" category (that is, would you spend your personal money on a copy)? Has it often pointed out bugs that you wouldn't have seen with the compiler's warning level turned up full blast? Christopher Duncan Today's Corporate Battle Tactic Unite the Tribes: Ending Turf Wars for Career and Business Success The Career Programmer: Guerilla Tactics for an Imperfect World

              A 1 Reply Last reply
              0
              • A Anna Jayne Metcalfe

                I've got an article to write. :cool: In my last job we started using PC-Lint[^] to identify potential problems in the code. Unfortunately, it's a command line tool, and not at all easy to integrate into an IDE for more than single files. However, among the spin-offs of ResOrg[^] are classes to parse Visual C++ project and solution/workspace files. With that functionality available I was able to write a command line utility to produce a PC-Lint run on an entire project or workspace. Believe me that's really useful if you have a large project and limited resources! The results it produces are in linked HTML or XML files:

                • Sample HTML output[^]
                • Sample XML output[^]

                The good news is my former company has agreed to let me release the source publicly...it doesn't contain any company IPR and this way they won't have to maintain it themselves. :) I'm hoping to write an article on this in the next month or so, but in the meantime, any suggestions are welcome. :cool: Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

                G Offline
                G Offline
                Garth T
                wrote on last edited by
                #7

                I Look forward to reading it ..:) Programming from a spec is like walking on water ...... Its Easier once frozen ;-)

                1 Reply Last reply
                0
                • L leppie

                  An after you fix the "problems", does it still work? C is art, not style ;p top secret xacc-ide 0.0.1

                  A Offline
                  A Offline
                  Anna Jayne Metcalfe
                  wrote on last edited by
                  #8

                  leppie wrote: An after you fix the "problems", does it still work? C is art, not style I don't code in C. ;) We've certainly found bugs as a result of analysing the output of Lint runs...the fun part is when you point them out to the testers after they've tested that version of the product! :laugh: Seriously, I'd recommend it. It's a pain to set up and painful to watch it (on a bad day) rip your code to pieces, but the results are well worth it. :) Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

                  1 Reply Last reply
                  0
                  • C Christopher Duncan

                    Nice work, Anna. I've seen their ads forever. As a seasoned developer, what's your take on their product in the "worth the expenditure / not worth the expenditure" category (that is, would you spend your personal money on a copy)? Has it often pointed out bugs that you wouldn't have seen with the compiler's warning level turned up full blast? Christopher Duncan Today's Corporate Battle Tactic Unite the Tribes: Ending Turf Wars for Career and Business Success The Career Programmer: Guerilla Tactics for an Imperfect World

                    A Offline
                    A Offline
                    Anna Jayne Metcalfe
                    wrote on last edited by
                    #9

                    I'd say it's definitely worth it. It's far, far more aggressive than the compiler, and will catch things like unguarded pointers, potential memory leaks, vars being hidden by identically named ones at different scope....the list is endless. We've found many potential nasties, including several that manifested as changes in application behaviour. It does need to be carefully tuned though...it's not a tool you can get all the benefit of out of the box. It really should be closely integrated with the IDE though. That would make it so much easier to use. Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

                    C 1 Reply Last reply
                    0
                    • A Anna Jayne Metcalfe

                      I'd say it's definitely worth it. It's far, far more aggressive than the compiler, and will catch things like unguarded pointers, potential memory leaks, vars being hidden by identically named ones at different scope....the list is endless. We've found many potential nasties, including several that manifested as changes in application behaviour. It does need to be carefully tuned though...it's not a tool you can get all the benefit of out of the box. It really should be closely integrated with the IDE though. That would make it so much easier to use. Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

                      C Offline
                      C Offline
                      Christopher Duncan
                      wrote on last edited by
                      #10

                      Cool. Next time my boss goes on a software buying stint I'm going to suggest this to him. Christopher Duncan Today's Corporate Battle Tactic Unite the Tribes: Ending Turf Wars for Career and Business Success The Career Programmer: Guerilla Tactics for an Imperfect World

                      A 1 Reply Last reply
                      0
                      • A Anna Jayne Metcalfe

                        I've got an article to write. :cool: In my last job we started using PC-Lint[^] to identify potential problems in the code. Unfortunately, it's a command line tool, and not at all easy to integrate into an IDE for more than single files. However, among the spin-offs of ResOrg[^] are classes to parse Visual C++ project and solution/workspace files. With that functionality available I was able to write a command line utility to produce a PC-Lint run on an entire project or workspace. Believe me that's really useful if you have a large project and limited resources! The results it produces are in linked HTML or XML files:

                        • Sample HTML output[^]
                        • Sample XML output[^]

                        The good news is my former company has agreed to let me release the source publicly...it doesn't contain any company IPR and this way they won't have to maintain it themselves. :) I'm hoping to write an article on this in the next month or so, but in the meantime, any suggestions are welcome. :cool: Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

                        J Offline
                        J Offline
                        Jeremy Falcon
                        wrote on last edited by
                        #11

                        Are you going to do the add-in for VS.NET or VC++6? Jeremy Falcon

                        A 1 Reply Last reply
                        0
                        • A Anna Jayne Metcalfe

                          Hi Bassam, I found the per project integration crashed VC6 when I tried it! Per file integration was OK though. :confused: There's also nothing that works on a solution or workspace level, and we also needed something to run as part of the build process outside of the IDE... Having HTML and XML output also gave us a way to browse the results easier, without having to open individal text output files in Explorer. :cool: Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

                          B Offline
                          B Offline
                          Bassam Abdul Baki
                          wrote on last edited by
                          #12

                          Here are the Tool settings that I have at home for Visual Studio. The one to generate the *.lnt files seems to be only at work. PC-L&int (Project) C:\LINT\Lint-NT.exe -i"C:\LINT" std.lnt env-vc6.lnt project.lnt $(FileDir) x Use Output Window PC-Lint (&Unit) C:\LINT\Lint-NT.exe -i"C:\LINT" -u std.lnt env-vc6.lnt "$(FileName)" $(FileDir) x Use Output Window Also, here's the one for the help. PC-Lint &Help winhlp32.exe -k$(CurText) C:\LINT\pc-lint80.hlp "For that one fraction of a second, you were open to options you would never have considered. That is the exploration that awaits you. Not mapping stars and studying nebula, but charting the unknown possibilities of existence." - Q (Star Trek: The Next Generation)

                          A 1 Reply Last reply
                          0
                          • C Christopher Duncan

                            Cool. Next time my boss goes on a software buying stint I'm going to suggest this to him. Christopher Duncan Today's Corporate Battle Tactic Unite the Tribes: Ending Turf Wars for Career and Business Success The Career Programmer: Guerilla Tactics for an Imperfect World

                            A Offline
                            A Offline
                            Anna Jayne Metcalfe
                            wrote on last edited by
                            #13

                            Good luck hun. :) Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

                            1 Reply Last reply
                            0
                            • J Jeremy Falcon

                              Are you going to do the add-in for VS.NET or VC++6? Jeremy Falcon

                              A Offline
                              A Offline
                              Anna Jayne Metcalfe
                              wrote on last edited by
                              #14

                              You read my mind Jeremy. :) Realistically, an add-in is some way off though...I've got a lot to do at the moment! Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

                              1 Reply Last reply
                              0
                              • B Bassam Abdul Baki

                                Here are the Tool settings that I have at home for Visual Studio. The one to generate the *.lnt files seems to be only at work. PC-L&int (Project) C:\LINT\Lint-NT.exe -i"C:\LINT" std.lnt env-vc6.lnt project.lnt $(FileDir) x Use Output Window PC-Lint (&Unit) C:\LINT\Lint-NT.exe -i"C:\LINT" -u std.lnt env-vc6.lnt "$(FileName)" $(FileDir) x Use Output Window Also, here's the one for the help. PC-Lint &Help winhlp32.exe -k$(CurText) C:\LINT\pc-lint80.hlp "For that one fraction of a second, you were open to options you would never have considered. That is the exploration that awaits you. Not mapping stars and studying nebula, but charting the unknown possibilities of existence." - Q (Star Trek: The Next Generation)

                                A Offline
                                A Offline
                                Anna Jayne Metcalfe
                                wrote on last edited by
                                #15

                                That looks the same as I used hun. The project variety still crashes though...and using LintProject (the tool I referred to) I don't have to write the .lnt files as they're automatically generated from the dsp or vcproj. :cool: Anna :rose: Homepage | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work. Trouble with resource IDs? Try the Resource ID Organiser Visual C++ Add-In

                                1 Reply Last reply
                                0
                                Reply
                                • Reply as topic
                                Log in to reply
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes


                                • Login

                                • Don't have an account? Register

                                • Login or register to search.
                                • First post
                                  Last post
                                0
                                • Categories
                                • Recent
                                • Tags
                                • Popular
                                • World
                                • Users
                                • Groups