SlideShare uma empresa Scribd logo
1 de 2
Baixar para ler offline
Static	analysis	of	C++Builder	and	WinRT	
projects
Author: Andrey Karpov
Date: 20.12.2012
I'm addressing developers with a specific request. Our plans for the PVS-Studio 5.00 static code analyzer are
to implement integration with the C++Builder environment and support for the C++/CX language extension.
Unfortunately, we have very few projects developed in that environment or involving that extension, and
we find it therefore difficult to test the new functionality. That's why I'm asking the community to share the
source codes of your projects with us. Now let's speak of it all in detail.
We want the significant functionality changes in our tool to be timed to the release of PVS-Studio 5.00.
These changes will first of all be related to C++Builder and WinRT. If don't know about this analyzer, here
you are some information and usage examples on the subject: "PVS-Studio advertisement - static analysis of
C/C++ code".
It's the active development of C++Builder during the recent time that has urged us to realize support for it.
In particular, this analyzer now supports 64-bit software, which means the time has come for us to offer the
best set of diagnostics to search for 64-bit errors to developers.
It's C++Builder XE3 we'll start supporting right away. Whether or not we will support earlier versions, I
cannot say for now. PVS-Studio will integrate directly into the C++Builder development environment and
provide the same functionality as in Visual Studio.
Also, we cannot but pay attention to the new WinRT platform. That's why we want to support the C++/CX
language.
C++/CX (Component Extensions) is C++ extensions implemented in the Microsoft compilers. The syntax
resembles that used in C++/CLI, but C++/CX programs are run in Windows Runtime (instead of Common
Language Runtime) and compiled into machine code (instead of byte-code managed code).
So, as you can see, we have interesting and useful undertakings to fulfill. But we are facing a problem: we
have no material to test the new functionality on. It has happened that most C++Builder projects are
proprietary. We've managed to find just a few small open-source projects on the Internet so far.
What WinRT is concerned, we have an even bigger trouble with that. This area is new, and finding at least
anything related to it is a difficult task.
So please share what you have. I'm sure some of you have old C++Builder projects you can send to us. We
will try to convert them in C++Builder XE3 and start the testing. If you want to know the results, we'll
provide those to you (I mean the list of detected errors).
In case of WinRT, there can be no old projects, of course. However, perhaps some of you are currently
developing projects you don't mind showing us. We promise to keep confidential.
If you have a project you can give us for dissection, please write to support@viva64.com.

Mais conteúdo relacionado

Semelhante a Static analysis of C++Builder and WinRT projects

Migrating From Cpp To C Sharp
Migrating From Cpp To C SharpMigrating From Cpp To C Sharp
Migrating From Cpp To C Sharp
Ganesh Samarthyam
 

Semelhante a Static analysis of C++Builder and WinRT projects (20)

PVS-Studio confesses its love for Linux
PVS-Studio confesses its love for LinuxPVS-Studio confesses its love for Linux
PVS-Studio confesses its love for Linux
 
PVS-Studio 7.25 release
PVS-Studio 7.25 releasePVS-Studio 7.25 release
PVS-Studio 7.25 release
 
Microsoft .NET 6 -What's All About The New Update
Microsoft .NET 6 -What's All About The New UpdateMicrosoft .NET 6 -What's All About The New Update
Microsoft .NET 6 -What's All About The New Update
 
Migrating From Cpp To C Sharp
Migrating From Cpp To C SharpMigrating From Cpp To C Sharp
Migrating From Cpp To C Sharp
 
How to Port a 9 Million Code Line Project to 64 bits?
How to Port a 9 Million Code Line Project to 64 bits? How to Port a 9 Million Code Line Project to 64 bits?
How to Port a 9 Million Code Line Project to 64 bits?
 
Session 1 - c++ intro
Session   1 - c++ introSession   1 - c++ intro
Session 1 - c++ intro
 
Foundations for the perfect technology stream
Foundations for the perfect technology streamFoundations for the perfect technology stream
Foundations for the perfect technology stream
 
Programming in c plus plus2
Programming in c plus plus2Programming in c plus plus2
Programming in c plus plus2
 
Using Clojure, NoSQL Databases and Functional-Style JavaScript to Write Gext-...
Using Clojure, NoSQL Databases and Functional-Style JavaScript to Write Gext-...Using Clojure, NoSQL Databases and Functional-Style JavaScript to Write Gext-...
Using Clojure, NoSQL Databases and Functional-Style JavaScript to Write Gext-...
 
Guide to Vite JS – Modern Fron-End Development Tool
Guide to Vite JS – Modern Fron-End Development ToolGuide to Vite JS – Modern Fron-End Development Tool
Guide to Vite JS – Modern Fron-End Development Tool
 
Build 2017 - B8083 - The future of Visual Studio
Build 2017 - B8083 - The future of Visual StudioBuild 2017 - B8083 - The future of Visual Studio
Build 2017 - B8083 - The future of Visual Studio
 
The Development History of PVS-Studio for Linux
The Development History of PVS-Studio for LinuxThe Development History of PVS-Studio for Linux
The Development History of PVS-Studio for Linux
 
High Productivity Web Development Workflow
High Productivity Web Development WorkflowHigh Productivity Web Development Workflow
High Productivity Web Development Workflow
 
High productivity web development workflow - JavaScript Meetup Saigon 2014
High productivity web development workflow - JavaScript Meetup Saigon 2014High productivity web development workflow - JavaScript Meetup Saigon 2014
High productivity web development workflow - JavaScript Meetup Saigon 2014
 
PVS-Studio Has Finally Got to Boost
PVS-Studio Has Finally Got to BoostPVS-Studio Has Finally Got to Boost
PVS-Studio Has Finally Got to Boost
 
Hacking the Kinect with GAFFTA Day 1
Hacking the Kinect with GAFFTA Day 1Hacking the Kinect with GAFFTA Day 1
Hacking the Kinect with GAFFTA Day 1
 
Introduction-to-C-Part-1.pdf
Introduction-to-C-Part-1.pdfIntroduction-to-C-Part-1.pdf
Introduction-to-C-Part-1.pdf
 
tutorials-visual-studio_visual-studio-2015-preview-comes-with-emulator-for-an...
tutorials-visual-studio_visual-studio-2015-preview-comes-with-emulator-for-an...tutorials-visual-studio_visual-studio-2015-preview-comes-with-emulator-for-an...
tutorials-visual-studio_visual-studio-2015-preview-comes-with-emulator-for-an...
 
C# 4.0 - Whats New
C# 4.0 - Whats NewC# 4.0 - Whats New
C# 4.0 - Whats New
 
Open frameworks 101_fitc
Open frameworks 101_fitcOpen frameworks 101_fitc
Open frameworks 101_fitc
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 

Static analysis of C++Builder and WinRT projects

  • 1. Static analysis of C++Builder and WinRT projects Author: Andrey Karpov Date: 20.12.2012 I'm addressing developers with a specific request. Our plans for the PVS-Studio 5.00 static code analyzer are to implement integration with the C++Builder environment and support for the C++/CX language extension. Unfortunately, we have very few projects developed in that environment or involving that extension, and we find it therefore difficult to test the new functionality. That's why I'm asking the community to share the source codes of your projects with us. Now let's speak of it all in detail. We want the significant functionality changes in our tool to be timed to the release of PVS-Studio 5.00. These changes will first of all be related to C++Builder and WinRT. If don't know about this analyzer, here you are some information and usage examples on the subject: "PVS-Studio advertisement - static analysis of C/C++ code". It's the active development of C++Builder during the recent time that has urged us to realize support for it. In particular, this analyzer now supports 64-bit software, which means the time has come for us to offer the best set of diagnostics to search for 64-bit errors to developers. It's C++Builder XE3 we'll start supporting right away. Whether or not we will support earlier versions, I cannot say for now. PVS-Studio will integrate directly into the C++Builder development environment and provide the same functionality as in Visual Studio. Also, we cannot but pay attention to the new WinRT platform. That's why we want to support the C++/CX language. C++/CX (Component Extensions) is C++ extensions implemented in the Microsoft compilers. The syntax resembles that used in C++/CLI, but C++/CX programs are run in Windows Runtime (instead of Common Language Runtime) and compiled into machine code (instead of byte-code managed code). So, as you can see, we have interesting and useful undertakings to fulfill. But we are facing a problem: we have no material to test the new functionality on. It has happened that most C++Builder projects are proprietary. We've managed to find just a few small open-source projects on the Internet so far. What WinRT is concerned, we have an even bigger trouble with that. This area is new, and finding at least anything related to it is a difficult task. So please share what you have. I'm sure some of you have old C++Builder projects you can send to us. We will try to convert them in C++Builder XE3 and start the testing. If you want to know the results, we'll provide those to you (I mean the list of detected errors).
  • 2. In case of WinRT, there can be no old projects, of course. However, perhaps some of you are currently developing projects you don't mind showing us. We promise to keep confidential. If you have a project you can give us for dissection, please write to support@viva64.com.