Opened 6 years ago

Closed 6 years ago

Last modified 6 years ago

#4084 closed defect (fixed)

epsilon support: 0.9.1 change can cause syntax error.

Reported by: frankie Owned by: warmerdam
Priority: normal Milestone: 1.9.0
Component: GDAL_Raster Version:
Severity: normal Keywords:
Cc:

Description

epsilon.h in 0.9.1 moved an unnamed union to a named (hdr_data) one. That could cause a syntax error with some compilers in epsilondataset.cpp. See:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=626234

It is probably better testing at building time about that.

Change History (4)

comment:1 Changed 6 years ago by frankie

  • Version changed from unspecified to svn-trunk

comment:2 Changed 6 years ago by frankie

Just for completeness, the correct approach in a pure C library is that used in 0.9.1, but unnamed unions are legal in C++, so some compilers accept them equally well in C and C++. I would simply require a >= 0.9.1 version for epsilon and stop. Supporting a previous (less portable) version is probably pointless.

comment:3 follow-up: Changed 6 years ago by rouault

  • Component changed from default to GDAL_Raster
  • Milestone set to 1.9.0
  • Resolution set to fixed
  • Status changed from new to closed
  • Version svn-trunk deleted

r22363 /trunk/gdal/frmts/epsilon/ (epsilondataset.cpp frmt_epsilon.html): Epsilon: now require libepsilon 0.9.1 to build. Update libepsilon licence (now dual LGPL/GPL) in the doc (#4084)

I'm a bit hesitant about backporting this in 1.8.X. There are probably people that use 0.8.1 happily with 1.8.0 and they wouldn't like to be obliged to upgrade libepsilon because they upgrade gdal. A configure test could be written, but I'm just not motivated enough to do that for a marginally used driver...

comment:4 in reply to: ↑ 3 Changed 6 years ago by sharpie

I'm a bit hesitant about backporting this in 1.8.X. There are probably people that use 0.8.1 happily with 1.8.0 and they wouldn't like to be obliged to upgrade libepsilon because they upgrade gdal. A configure test could be written, but I'm just not motivated enough to do that for a marginally used driver...

I wish it was backported---EPSILON had issues that prevented it from building on OS X until the 0.9.x series was released.

Note: See TracTickets for help on using tickets.