penberg / helix

Helix, a market data feed handler for C and C++.
Other
110 stars 35 forks source link

Handle 32bit long #28

Closed jlaire closed 8 years ago

jlaire commented 8 years ago

Building in a VM with 32bit long generated a bunch of warnings.

penberg commented 8 years ago

I now see the following warnings on 64-bit. We should probably just use the PRu64 printf format string macro here.

/home/penberg/helix/tools/helix-trace/helix-trace.cc: In function ‘void fmt_pretty_ob(helix_session_t, helix_order_book_t)’:
/home/penberg/helix/tools/helix-trace/helix-trace.cc:77:4: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
    );
    ^
/home/penberg/helix/tools/helix-trace/helix-trace.cc:77:4: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 5 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
/home/penberg/helix/tools/helix-trace/helix-trace.cc:77:4: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 6 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
/home/penberg/helix/tools/helix-trace/helix-trace.cc:77:4: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 7 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
/home/penberg/helix/tools/helix-trace/helix-trace.cc:77:4: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 8 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
/home/penberg/helix/tools/helix-trace/helix-trace.cc:77:4: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 11 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
/home/penberg/helix/tools/helix-trace/helix-trace.cc: In function ‘void fmt_csv_ob(helix_session_t, helix_order_book_t)’:
/home/penberg/helix/tools/helix-trace/helix-trace.cc:129:4: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
    );
    ^
/home/penberg/helix/tools/helix-trace/helix-trace.cc:129:4: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 6 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
/home/penberg/helix/tools/helix-trace/helix-trace.cc:129:4: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 8 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
/home/penberg/helix/tools/helix-trace/helix-trace.cc: In function ‘void fmt_csv_trade(helix_session_t, helix_trade_t)’:
/home/penberg/helix/tools/helix-trace/helix-trace.cc:137:129: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=]
   helix_trade_symbol(trade), helix_trade_timestamp(trade), helix_trade_price(trade)/10000.0, trade_sign(helix_trade_sign(trade)));
                                                                                                                                 ^
Linking CXX executable helix-trace
jlaire commented 8 years ago

I'll change to PRu64 and update in a sec.

penberg commented 8 years ago

Pulled, thanks!