[PATCH] Fix bunch of printf warnings

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

Holger Hans Peter Freyther holger at freyther.de
Sat Oct 25 13:42:40 UTC 2014


On Thu, Oct 23, 2014 at 05:59:32PM +0200, Peter Stuge wrote:

> How come it has higher rank?
> 
> I don't have the spec, maybe it is stated explicitly there, but this
> blog post (it's on the internet so it MUST be true!) outlines rules
> based on the standard, and doesn't mention either size_t type.

#include <stdint.h>
#include <sys/socket.h>
#include <stdint.h>

int foo()
{
        unsigned int foo = 1212323123123;
        size_t bla = 2;

        typeof(foo - bla) k;
        k = 3;
}


clang-3.4 -Xclang -ast-dump -fsyntax-only foo.c

`-FunctionDecl 0x9946300 </tmp/foo.c:5:1, line:12:1> foo 'int ()'
  `-CompoundStmt 0x9946588 <line:6:1, line:12:1>
    |-DeclStmt 0x99463c8 <line:7:2, col:34>
    | `-VarDecl 0x9946370 <col:2, col:21> foo 'unsigned int'
    |   `-ImplicitCastExpr 0x99463b8 <col:21> 'unsigned int' <IntegralCast>
    |     `-IntegerLiteral 0x99463a0 <col:21> 'long long' 1212323123123
    |-DeclStmt 0x9946438 <line:8:2, col:16>
    | `-VarDecl 0x99463e0 <col:2, col:15> bla 'size_t':'unsigned int'
    |   `-ImplicitCastExpr 0x9946428 <col:15> 'size_t':'unsigned int' <IntegralCast>
    |     `-IntegerLiteral 0x9946410 <col:15> 'int' 2
    |-DeclStmt 0x9946520 <line:10:2, col:21>
    | `-VarDecl 0x99464f0 <col:2, col:20> k 'typeof (foo - bla)':'unsigned int'
    `-BinaryOperator 0x9946570 <line:11:2, col:6> 'typeof (foo - bla)':'unsigned int' '='
      |-DeclRefExpr 0x9946530 <col:2> 'typeof (foo - bla)':'unsigned int' lvalue Var 0x99464f0 'k' 'typeof (foo - bla)':'unsigned int'
      `-ImplicitCastExpr 0x9946560 <col:6> 'typeof (foo - bla)':'unsigned int' <IntegralCast>
        `-IntegerLiteral 0x9946548 <col:6> 'int' 3

If I read this correctly the type is 'unsigned int' with clang? An
issue with my reading? Clang bug?


cheers
	holger




More information about the OpenBSC mailing list