svn path=/trunk/yasm/; revision=354
/* Don't allow EXTERN and COMMON if symbol has already been DEFINED. */
/* Also, EXTERN and COMMON are mutually exclusive. */
- if ((rec->status & SYM_DEFINED) ||
+ if (((rec->status & SYM_DEFINED) && !(rec->visibility & SYM_EXTERN)) ||
((rec->visibility & SYM_COMMON) && (vis == SYM_EXTERN)) ||
((rec->visibility & SYM_EXTERN) && (vis == SYM_COMMON))) {
Error(_("duplicate definition of `%s'; first defined on line %d"),
/* Don't allow EXTERN and COMMON if symbol has already been DEFINED. */
/* Also, EXTERN and COMMON are mutually exclusive. */
- if ((rec->status & SYM_DEFINED) ||
+ if (((rec->status & SYM_DEFINED) && !(rec->visibility & SYM_EXTERN)) ||
((rec->visibility & SYM_COMMON) && (vis == SYM_EXTERN)) ||
((rec->visibility & SYM_EXTERN) && (vis == SYM_COMMON))) {
Error(_("duplicate definition of `%s'; first defined on line %d"),
--- /dev/null
+[extern blah]
+[extern blah]