Wrong placement of conditional definition of missing types

From: Guido Serassio <guido.serassio_at_acmeconsulting.it>
Date: Sat, 22 Aug 2009 11:52:09 +0200

Hi,

I have just found a logical problem in the placement of the conditional definition of missing types (int8_t, int16_t, etc):

Currently is placed in the final section of config.h, but it's too late:

config.h includes compact.h
compact.h includes compat_shared.h
compat_shared.h conditionally includes strtoll.h that needs int64_t definition still undefined at this time, so the build using Visual Studio fails.

Where move this definition block ?
Some proposal:

1. include/squid_types.h
2. a new compat/compat_types.h file included before compat/os/xxxx.h inclusion
3. compat.h itself before compat/os/xxxx.h inclusion

compat_shared.h is not a good candidate, because some definition are already done (and duplicated) into mswin.h that needs they.

Regards

Guido

Guido Serassio
Acme Consulting S.r.l.
Microsoft Gold Certified Partner
Via Lucia Savarino, 1                10098 - Rivoli (TO) - ITALY
Tel. : +39.011.9530135               Fax. : +39.011.9781115
Email: guido.serassio_at_acmeconsulting.it
WWW: http://www.acmeconsulting.it
Received on Sat Aug 22 2009 - 09:52:15 MDT

This archive was generated by hypermail 2.2.0 : Sat Aug 22 2009 - 12:00:05 MDT