From: Ivan Maidanski Date: Fri, 21 Oct 2016 18:57:15 +0000 (+0300) Subject: Workaround 'tainted int used as loop bound' static analysis tool warning X-Git-Tag: v8.0.0~1086 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1868a901034d3a606dd529dd9b9cab3433802bad;p=platform%2Fupstream%2Flibgc.git Workaround 'tainted int used as loop bound' static analysis tool warning No need to check upper bound of n here, so a dummy check is added. * tests/test_cpp.cc (main) [LINT2]: Check upper bound of n local variable (the check is actually dummy). * tests/test_cpp.cc (main): Reformat code (which handles n variable). --- diff --git a/tests/test_cpp.cc b/tests/test_cpp.cc index cec6989..17fa41e 100644 --- a/tests/test_cpp.cc +++ b/tests/test_cpp.cc @@ -251,9 +251,16 @@ void* Undisguise( GC_word i ) { *xptr = x; x = 0; # endif - if (argc != 2 || (0 >= (n = atoi( argv[ 1 ] )))) { - GC_printf( "usage: test_cpp number-of-iterations\nAssuming 10 iters\n" ); - n = 10;} + if (argc != 2 + || (n = atoi(argv[1])) <= 0 +# ifdef LINT2 + || n >= (((unsigned)-1) >> 1) - 1 +# endif + ) { + GC_printf("usage: test_cpp number-of-iterations\n" + "Assuming 10 iters\n"); + n = 10; + } for (iters = 1; iters <= n; iters++) { GC_printf( "Starting iteration %d\n", iters );