Cppcheck 2.6 এর নতুন সংস্করণ ইতিমধ্যেই প্রকাশ করা হয়েছে এবং এগুলি এর খবর

মুক্তি স্ট্যাটিক কোড বিশ্লেষকের সংস্করণ cppcheck 2.6, Que সি এবং সি ++ কোডে বিভিন্ন ধরণের ত্রুটি সনাক্ত করতে দেয়এমনকি এমবেডেড সিস্টেমের সাধারণ অ-স্ট্যান্ডার্ড সিনট্যাক্স ব্যবহার করার সময়।

প্লাগইনগুলির একটি সংগ্রহ সরবরাহ করা হয় যার মাধ্যমে cppcheck এর বিভিন্ন উন্নয়ন, ক্রমাগত ইন্টিগ্রেশন এবং পরীক্ষা ব্যবস্থার সাথে ইন্টিগ্রেশন প্রদান করা হয়, সেইসাথে কোডিং স্টাইলের সাথে কোডের সম্মতি যাচাই করার মতো বৈশিষ্ট্যগুলি।

কোড বিশ্লেষণ করতে, আপনি আপনার নিজের পার্সার এবং একটি বহিরাগত ক্ল্যাং পার্সার উভয়ই ব্যবহার করতে পারেন। ডেবিয়ান প্যাকেজগুলির জন্য সহযোগী কোড পর্যালোচনার কাজের জন্য স্থানীয় সম্পদ প্রদানের জন্য এটি একটি donate-cpu.py স্ক্রিপ্ট অন্তর্ভুক্ত করে।

Cppcheck এর উন্নয়ন অনির্ধারিত আচরণের সাথে যুক্ত সমস্যাগুলি চিহ্নিত করার উপর দৃষ্টি নিবদ্ধ করে এবং নিরাপত্তার দৃষ্টিকোণ থেকে বিপজ্জনক নির্মাণের ব্যবহার।

লক্ষ্য হল মিথ্যা ইতিবাচকতা কমানো। চিহ্নিত সমস্যাগুলির মধ্যে: অস্তিত্বহীন বস্তুর পয়েন্টার, শূন্য দ্বারা বিভাজন, পূর্ণসংখ্যা ওভারফ্লো, ভুল বিট-শিফটিং অপারেশন, ভুল রূপান্তর, মেমরি সমস্যা, এসটিএল এর ভুল ব্যবহার, নাল পয়েন্টারগুলির ডিফারেন্সিং, একটি বাফারের আসল অ্যাক্সেসের পরে চেক প্রয়োগ করা , বাফার সীমা উপচে পড়া, uninitialized ভেরিয়েবল ব্যবহার করে।

Cppcheck 2.6 এর প্রধান নতুন বৈশিষ্ট্য

এই নতুন সংস্করণে এসe পার্সারের কার্নেলে বিভিন্ন চেক যুক্ত করেছে, যার মধ্যে ফাংশনের মূল অংশে রিটার্ন ডিক্লারেশনের অনুপস্থিতির যাচাই বেরিয়ে আসে, পাশাপাশি ওভারল্যাপিং ডেটা রেকর্ড, অনির্ধারিত আচরণের সংজ্ঞা এবং তুলনা করা মানটির যাচাইও প্রতিনিধিত্বের সীমার বাইরে প্রকারের মান।

আরেকটি নতুনত্ব যা দাঁড়িয়ে আছে তা হল কপি অপটিমাইজেশন std :: move (local) রিটার্ন করার ক্ষেত্রে প্রযোজ্য নয়;, প্লাস ইউনিক্স প্ল্যাটফর্ম এবং লাইব্রেরি ট্যাগের জন্য বিভিন্ন রঙে ডায়াগনস্টিক বার্তা প্রদর্শনের জন্য সমর্থন যোগ করা হয়েছে এখন একটি ট্যাগ থাকতে পারে স্মার্ট পয়েন্টারগুলির জন্য যার অনন্য সম্পত্তি রয়েছে। এই ধরণের স্মার্ট পয়েন্টারগুলিতে এখন ড্যাংলিং লিঙ্ক সতর্কতা জারি করা হয়েছে।

উপরন্তু, Misra C 2012 নিয়ন্ত্রণ সম্পূর্ণরূপে বাস্তবায়িত হয়েছে, সংশোধন 1 এবং সংশোধন 2 সহ, নিয়ম 1.1, 1.2 এবং 17.3 ব্যতীত। কম্পাইলারের 1.1 এবং 1.2 চেক করা উচিত। GCC এর মত কম্পাইলার 17.3 চেক করতে পারে।

অন্যান্য পরিবর্তনগুলি যে দাঁড়িয়ে আছে Of এই নতুন সংস্করণ:

  • বিভিন্ন স্ট্রীমে পড়তে এবং লেখার জন্য ফাইলটি একসাথে খোলা যাবে না;
  • ValueFlow এর জন্য প্রতীকী বিশ্লেষণ যোগ করা হয়েছে। দুটি অজানা ভেরিয়েবলের মধ্যে পার্থক্য গণনা করার সময় একটি সাধারণ ডেল্টা ব্যবহার করা হয়;
  • "সংজ্ঞায়িত" টোকেন তালিকার জন্য ব্যবহৃত নিয়মগুলিও #সামঞ্জস্যপূর্ণ হতে পারে;
  • লাইব্রেরির ট্যাগ এখন একটি ট্যাগ থাকতে পারে এবং এইভাবে ফ্রি ফাংশন যা std :: size, std :: খালি, std :: start, std :: end, ইত্যাদি কনটেইনার গ্রহণ করতে পারে। আপনি পাত্রে জন্য yeld বা কর্ম নির্দিষ্ট করতে পারেন;
  • Pp cppcheck-build-dir প্যারামিটার হ্যান্ডলিংয়ের সাথে স্থির সমস্যা;
    htmlreport এখন লেখক সম্পর্কে তথ্য মুদ্রণ করতে পারে (git blame ব্যবহার করে);
  • ধ্রুবক নয়, কিন্তু ধ্রুবক হতে পারে এমন ভেরিয়েবলের উপর সতর্কতার বর্ধিত জারি;
  • জমে থাকা বিশ্লেষক বাগ এবং ঘাটতি সংশোধন করা হয়েছে।

পরিশেষে, যদি আপনি এই নতুন সংস্করণ সম্পর্কে আরো জানতে আগ্রহী হন, তাহলে আপনি পরামর্শ করতে পারেন নিম্নলিখিত লিঙ্কে বিশদ।

কিভাবে লিনাক্সে cppcheck ইনস্টল করবেন?

যারা তাদের লিনাক্স ডিস্ট্রিবিউশনে cppcheck ইন্সটল করতে সক্ষম হতে আগ্রহী, তারা আমাদের নীচে শেয়ার করা নির্দেশাবলী অনুসরণ করতে পারেন।

আপনি যদি একজন ডেবিয়ান ব্যবহারকারী বা অন্য কোন ডিস্ট্রিবিউশন ভিত্তিক বা ডিপিন বা উবুন্টু থেকে প্রাপ্ত হন, তাহলে আপনি নিচের কমান্ডটি লিখে সরাসরি টার্মিনাল থেকে ইনস্টল করতে পারেন:

sudo apt-get install cppcheck

এখন যারা ফেডোরা ব্যবহারকারী এবং এটি থেকে প্রাপ্ত, তারা নিম্নলিখিত কমান্ড টাইপ করে ইনস্টলেশন সম্পাদন করতে পারেন:

sudo yum instalar cppcheck

অথবা যারা আর্ক লিনাক্স ব্যবহারকারী বা এর অন্য কোন ডেরিভেটিভ তাদের জন্য, তারা নিম্নলিখিত কমান্ড দিয়ে ইনস্টল করতে পারেন:

sudo pacman -S cppcheck


আপনার মন্তব্য দিন

আপনার ইমেল ঠিকানা প্রকাশিত হবে না। প্রয়োজনীয় ক্ষেত্রগুলি দিয়ে চিহ্নিত করা *

*

*

  1. ডেটার জন্য দায়বদ্ধ: মিগুয়েল অ্যাঞ্জেল গাটান
  2. ডেটার উদ্দেশ্য: নিয়ন্ত্রণ স্প্যাম, মন্তব্য পরিচালনা।
  3. আইনীকরণ: আপনার সম্মতি
  4. তথ্য যোগাযোগ: ডেটা আইনি বাধ্যবাধকতা ব্যতীত তৃতীয় পক্ষের কাছে জানানো হবে না।
  5. ডেটা স্টোরেজ: ওসেন্টাস নেটওয়ার্কস (ইইউ) দ্বারা হোস্ট করা ডেটাবেস
  6. অধিকার: যে কোনও সময় আপনি আপনার তথ্য সীমাবদ্ধ করতে, পুনরুদ্ধার করতে এবং মুছতে পারেন।