論文の概要: Detecting lifetime errors of std::string_view objects in C++
- arxiv url: http://arxiv.org/abs/2408.09325v1
- Date: Sun, 18 Aug 2024 01:56:31 GMT
- ステータス: 処理完了
- システム内更新日: 2024-08-20 21:19:42.083427
- Title: Detecting lifetime errors of std::string_view objects in C++
- Title(参考訳): C++におけるstd::string_viewオブジェクトの寿命エラーの検出
- Authors: Reka Kovacs, Gabor Horvath, Zoltan Porkolab,
- Abstract要約: 本稿では,::string viewの誤用によるプログラミングエラーを検出する静的解析ツールについて述べる。
我々の研究は、分析における:string view操作のモデリング、ライフタイムエラーの検出手順の定義、ユーザフレンドリーな診断メッセージの構築、チェッカーの評価を含む。
- 参考スコア(独自算出の注目度): 0.0
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: std::string view is a reference-like data structure in the C++ Standard Template Library (STL) that enables fast and cheap processing of read-only strings. Due to its wide applicability and performance enhancing power, std::string view has been very popular since its introduction in the C++17 standard. However, its careless use can lead to serious memory management bugs. As the lifetime of a std::string view is not tied to the lifetime of the referenced string in any way, it is the user's responsibility to ensure that the view is only used while the viewed string is live and its buffer is not reallocated. This paper describes a static analysis tool that finds programming errors caused by the incorrect use of std::string view. Our work included modeling std::string view operations in the analysis, defining steps to detect lifetime errors, constructing user-friendly diagnostic messages, and performing an evaluation of the checker.
- Abstract(参考訳): std::string viewはC++ Standard Template Library(STL)の参照のようなデータ構造で、読み取り専用文字列の高速で安価な処理を可能にする。
幅広い適用性とパフォーマンス向上力のため、std::string viewはC++17標準の導入以来非常に人気がある。
しかし、不注意な使用は、深刻なメモリ管理のバグを引き起こす可能性がある。
std::stringビューのライフタイムは、参照された文字列のライフタイムと何らかの方法で結び付けられていないため、ビューがライブでバッファが再配置されていない間にのみ使用されることを保証するのは、ユーザの責任である。
本稿では,std::string viewの誤用によるプログラミングエラーを検出する静的解析ツールについて述べる。
我々の研究には、解析におけるstd::stringビュー操作のモデリング、ライフタイムエラーの検出手順の定義、ユーザフレンドリーな診断メッセージの構築、チェッカーの評価などが含まれました。
関連論文リスト
- VCP-CLIP: A visual context prompting model for zero-shot anomaly segmentation [19.83954061346437]
CLIPに基づくZSASタスクのための視覚的コンテキストプロンプトモデル(VCP-CLIP)を提案する。
具体的には、まず、グローバルな視覚情報をテキストプロンプトに埋め込むためのPre-VCPモジュールを設計する。
そこで我々は,画像のきめ細かい特徴を利用してテキスト埋め込みを調整する新しいポストVCPモジュールを提案する。
論文 参考訳(メタデータ) (2024-07-17T02:54:41Z) - C-LLM: Learn to Check Chinese Spelling Errors Character by Character [61.53865964535705]
本稿では,C-LLMを提案する。C-LLMは,文字による誤り文字のチェックを学習する中国語のスペルチェック手法である。
C-LLMは既存の方法よりも平均10%改善する。
論文 参考訳(メタデータ) (2024-06-24T11:16:31Z) - VDebugger: Harnessing Execution Feedback for Debugging Visual Programs [103.61860743476933]
V Debuggerは、視覚プログラムのローカライズとデバッギングのために、段階的に実行を追跡することで訓練された、批評家とリファインダーのフレームワークである。
Vデバッガは、詳細な実行フィードバックを活用してプログラムエラーを特定し、修正する。
6つのデータセットの評価は、Vデバッガの有効性を示し、ダウンストリームタスクの精度が最大3.2%向上したことを示している。
論文 参考訳(メタデータ) (2024-06-19T11:09:16Z) - GPT-HateCheck: Can LLMs Write Better Functional Tests for Hate Speech Detection? [50.53312866647302]
HateCheckは、合成データに対してきめ細かいモデル機能をテストするスイートである。
GPT-HateCheckは,スクラッチからより多彩で現実的な機能テストを生成するフレームワークである。
クラウドソースのアノテーションは、生成されたテストケースが高品質であることを示しています。
論文 参考訳(メタデータ) (2024-02-23T10:02:01Z) - Weak Memory Demands Model-based Compiler Testing [0.0]
コンパイラのバグは、コンパイルされたコンカレントプログラムの動作が、アーキテクチャメモリモデルによって許容されるように、ソースモデルの下でソースプログラムによって許容される振る舞いでない場合に発生する。
プロセッサの実装は、緩やかなアーキテクチャモデルの振る舞いをますます活用している。
論文 参考訳(メタデータ) (2024-01-12T15:50:32Z) - DebugBench: Evaluating Debugging Capability of Large Language Models [80.73121177868357]
DebugBench - LLM(Large Language Models)のベンチマーク。
C++、Java、Pythonの4つの主要なバグカテゴリと18のマイナータイプをカバーする。
ゼロショットシナリオで2つの商用および4つのオープンソースモデルを評価する。
論文 参考訳(メタデータ) (2024-01-09T15:46:38Z) - Compiler Testing With Relaxed Memory Models [0.0]
並列プログラムのためのT'el'echatコンパイラテストツールを提案する。
T'el'echatは並列C/C++プログラムをコンパイルし、ソースとコンパイルされたプログラムの振る舞いを比較する。
論文 参考訳(メタデータ) (2023-10-18T21:24:26Z) - Yuga: Automatically Detecting Lifetime Annotation Bugs in the Rust Language [15.164423552903571]
Rustプロジェクトでは、セキュリティ上の脆弱性が報告されている。
これらの脆弱性は、部分的には関数シグネチャの誤った終身アノテーションから生じます。
既存のツールはこれらのバグを検出するのに失敗する。
我々は,新たな静的解析ツールであるYugaを考案し,潜在的なライフタイムアノテーションのバグを検出する。
論文 参考訳(メタデータ) (2023-10-12T17:05:03Z) - REVIS: An Error Visualization Tool for Rust [10.036727981085221]
Rustは、所有権の概念を使用して、ガベージコレクタを使わずにメモリ安全性を保証するプログラミング言語である。
ディベロッパがライフタイム関連のエラーを修正するのを助けるために、VSCodeエクステンションであるREVISを開発した。
我々は、VSCode拡張の設計と実装、およびRustの学生学習者に対するその効果の予備的な評価について述べる。
論文 参考訳(メタデータ) (2023-09-12T23:15:49Z) - Mitigating Hallucination in Large Multi-Modal Models via Robust Instruction Tuning [92.85265959892115]
本稿では,Large-scale Robust Visual (LRV)-Instructionという,大規模かつ多様な視覚的インストラクションチューニングデータセットを紹介する。
本データセットは, GPT4が生成した400kの視覚的命令からなり, 16の視覚・言語的タスクをオープンエンドの指示と回答でカバーする。
LMMが生み出す幻覚を効果的に測定するために,人間の専門家による視覚指導のチューニングを安定的に評価するためのGAVIE(GPT4-Assisted Visual Instruction Evaluation)を提案する。
論文 参考訳(メタデータ) (2023-06-26T10:26:33Z) - The CLEAR Benchmark: Continual LEArning on Real-World Imagery [77.98377088698984]
連続学習(CL)は、生涯AIにとって重要な課題であると考えられている。
本稿では,視覚概念の自然な時間進化を伴う最初の連続画像分類ベンチマークであるCLEARを紹介する。
単純な教師なし事前学習のステップで、最先端のCLアルゴリズムがすでに強化されていることが分かりました。
論文 参考訳(メタデータ) (2022-01-17T09:09:09Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。