#610500 Can't compile any project with headers from libavifile-0.7-dev_0.7.48. Headers in 0.7.47 is worked.

Package:
libavifile-0.7-dev
Source:
avifile
Description:
development header files for libavifile
Submitter:
Сергей Степанов
Date:
2015-11-04 07:12:06 UTC
Severity:
wishlist
#610500#5
Date:
2011-01-19 06:53:14 UTC
From:
To:
Hi


I can not compile any my project in Debian Squeeze with headers in package
libavifile-0.7-dev (0.7.48). But this project compile
normally in Debian Lenny with libavifile-0.7-dev (0.7.47).


C++ code:
-----8<-----

#include <avifile-0.7/avifile.h>
#include <avifile-0.7/version.h>

#if AVIFILE_MINOR_VERSION > 6
#include <avifile-0.7/avm_default.h>
#else
#include <avifile-0.7/default.h>
#endif

#include <avifile-0.7/image.h>
#include <avifile-0.7/infotypes.h>
#include <avifile-0.7/StreamInfo.h>

#include <fstream>
#include <iostream>
#include <sys/types.h>

...

StreamInfo *m_streaminfo; // Error in this string
-----8<----- Error: ./Render/video/stVideoRenderAviLinux.h:81: error: ISO C++ forbids declaration of ‘StreamInfo’ with no type ./Render/video/stVideoRenderAviLinux.h:81: error: expected ‘;’ before ‘*’ token This error generate in g++-4.1, g++-4.3 and g++-4.4 compiler. Solution: Add typedef StreamInfo in namespace "avm" in tail of file /usr/include/avifile-0.7/StreamInfo.h, as it maked in 0.7.47 version. Before correction:
-----8<----- AVM_END_NAMESPACE; #endif // AVIFILE_STREAMINFO_H
-----8<----- After correction:
-----8<----- AVM_END_NAMESPACE; #ifdef AVM_COMPATIBLE typedef avm::StreamInfo StreamInfo; #endif #endif // AVIFILE_STREAMINFO_H
-----8<-----
#610500#10
Date:
2011-11-20 04:13:21 UTC
From:
To:
Hi Сергей,

From http://bugs.debian.org/610500
I'd like to confirm that if this is really a bug.

Shouldn't you use avm::StreamInfo or "using namespace avm" in your
project rather than export the type?

Yours Sincerely,
Paul

#610500#17
Date:
2011-12-31 15:11:25 UTC
From:
To:
severity 610500 wishlist
thanks

(2011年11月20日 21:23), Сергей Степанов wrote:

OK.
I think we can lower this bug's severity to wishlist.
It's not really a bug.
New apps should use avm::StreamInfo instead of just "StreamInfo" for
avifile 0.7.48.
Porting to new lib isn't hard at all.

Regards,
Paul