Closed
Bug 391147
Opened 17 years ago
Closed 17 years ago
hunspell doesn't build with msvc7.1 (no support for variadic macros, "unexpected in macro formal parameter list")
Categories
(Core :: Spelling checker, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: Gavin, Assigned: longsonr)
References
()
Details
Attachments
(1 file, 2 obsolete files)
778 bytes,
patch
|
mscott
:
review+
mscott
:
superreview+
|
Details | Diff | Splinter Review |
http://lxr.mozilla.org/seamonkey/source/extensions/spellcheck/hunspell/src/atypes.hxx#65 msvc7.1 barfs on that line, because it doesn't support variadic macros.
Reporter | ||
Comment 1•17 years ago
|
||
msvc7.1 isn't officially supported on the trunk, but many people still use it. It'd be nice if we could at least workaround this issue, if not fix it (and ideally upstream the fix to avoid maintenance hassles).
Assignee | ||
Comment 2•17 years ago
|
||
Assignee | ||
Updated•17 years ago
|
Attachment #275582 -
Attachment is patch: true
Attachment #275582 -
Flags: superreview?(mscott)
Attachment #275582 -
Flags: review?(mscott)
Comment 3•17 years ago
|
||
Might I suggest asking Nemeth to review it too?
Comment 4•17 years ago
|
||
OOps, variadic macro is only C99 standard, not C++: http://en.wikipedia.org/wiki/Variadic_macro. I will use this nice patch in next Hunspell, but without variable names (unused variable names cause warnings in OOo build environment), if it is ok for MSVC: #ifndef HUNSPELL_WARNING #ifdef HUNSPELL_WARNING_ON #define HUNSPELL_WARNING fprintf #define WARNVAR warnvar #else static inline void HUNSPELL_WARNING(FILE *, const char *, ...) {} #define WARNVAR #endif #endif Thanks, Laci
Assignee | ||
Comment 5•17 years ago
|
||
I've removed the variable names as suggested but you need #define WARNVAR warnvar rather than #define WARNVAR otherwise the code does not compile.
Attachment #275582 -
Attachment is obsolete: true
Attachment #275754 -
Flags: superreview?(mscott)
Attachment #275754 -
Flags: review?(mscott)
Attachment #275582 -
Flags: superreview?(mscott)
Attachment #275582 -
Flags: review?(mscott)
Assignee | ||
Comment 6•17 years ago
|
||
Attachment #275754 -
Attachment is obsolete: true
Attachment #275798 -
Flags: superreview?(mscott)
Attachment #275798 -
Flags: review?(mscott)
Attachment #275754 -
Flags: superreview?(mscott)
Attachment #275754 -
Flags: review?(mscott)
Comment 7•17 years ago
|
||
scott: can you please r+ this and get it in to the tree?
Severity: normal → blocker
Flags: blocking1.9+
Comment 8•17 years ago
|
||
Comment on attachment 275798 [details] [diff] [review] #define should be inside outer #endif thanks for the patch! I'll check this in right now.
Attachment #275798 -
Flags: superreview?(mscott)
Attachment #275798 -
Flags: superreview+
Attachment #275798 -
Flags: review?(mscott)
Attachment #275798 -
Flags: review+
Updated•17 years ago
|
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Comment 9•17 years ago
|
||
I had to back this out, the tree is closed.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Comment 10•17 years ago
|
||
(In reply to comment #5) >I've removed the variable names as suggested but you need #define WARNVAR >warnvar rather than #define WARNVAR otherwise the code does not compile. Or you could just remove the #define - WARNVAR is a perfectly legal name ;-)
Assignee | ||
Updated•17 years ago
|
Assignee: mscott → longsonr
Status: REOPENED → NEW
Assignee | ||
Comment 11•17 years ago
|
||
checked in.
Status: NEW → RESOLVED
Closed: 17 years ago → 17 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•