llvm/llvm-project

Create a check that warns about using %p printf specifier

Open

#43,453 opened on 2019年11月21日

GitHub で見る
 (11 comments) (0 reactions) (0 assignees)C++ (10,782 forks)batch import
bugzillaclang:static analyzerenhancementgood first issue

Repository metrics

Stars
 (26,378 stars)
PR merge metrics
 (平均マージ 1d 2h) (30d で 1,000 merged PRs)

説明

Bugzilla Link 44108
Version unspecified
OS Windows NT

Extended Description

Recently I ran into some surprising behavior surrounding the use of %p in a printf call. On Windows %p with a nullptr prints zeros, but on Linux %p with a nullptr prints "(nil)". This is surprising, but conforming to the standard which states (roughly) that the result of %p is implementation dependent.

Create a check that warns about the potential non-portable output when using %p in a printf or scanf specifier.

コントリビューターガイド