diff options
Diffstat (limited to 'clang/test/Analysis')
| -rw-r--r-- | clang/test/Analysis/inline.c | 6 | ||||
| -rw-r--r-- | clang/test/Analysis/inline.cpp | 7 |
2 files changed, 13 insertions, 0 deletions
diff --git a/clang/test/Analysis/inline.c b/clang/test/Analysis/inline.c index 8cba63f17e0..9ecdce33a36 100644 --- a/clang/test/Analysis/inline.c +++ b/clang/test/Analysis/inline.c @@ -110,3 +110,9 @@ void never_called_by_anyone() { clang_analyzer_checkInlined(0); // no-warning } + +void knr_one_argument(a) int a; { } + +void call_with_less_arguments() { + knr_one_argument(); // expected-warning{{too few arguments}} expected-warning{{Function taking 1 argument}} +} diff --git a/clang/test/Analysis/inline.cpp b/clang/test/Analysis/inline.cpp index 909e18017b3..fad77b3bee4 100644 --- a/clang/test/Analysis/inline.cpp +++ b/clang/test/Analysis/inline.cpp @@ -420,3 +420,10 @@ namespace rdar12409977 { clang_analyzer_eval(obj.getThis()->x == 42); // expected-warning{{TRUE}} } } + +namespace bug16307 { + void one_argument(int a) { } + void call_with_less() { + reinterpret_cast<void (*)()>(one_argument)(); // expected-warning{{Function taking 1 argument}} + } +} |

