In the Mach-O writer, only warn on ignored flags if the new flags
are different from the old flags.
Fixes http://tortall.lighthouseapp.com/projects/78676-yasm/tickets/246
diff --git a/modules/objfmts/macho/macho-objfmt.c b/modules/objfmts/macho/macho-objfmt.c
index 76b8029..bef564a 100644
--- a/modules/objfmts/macho/macho-objfmt.c
+++ b/modules/objfmts/macho/macho-objfmt.c
@@ -1497,9 +1497,13 @@
msd->sectname = f_sectname;
msd->flags = flags;
yasm_section_set_align(retval, align, line);
- } else if (flags_override)
- yasm_warn_set(YASM_WARN_GENERAL,
- N_("section flags ignored on section redeclaration"));
+ } else if (flags_override) {
+ // align is the only value used from overrides.
+ if (yasm_section_get_align(retval) != align) {
+ yasm_warn_set(YASM_WARN_GENERAL,
+ N_("section flags ignored on section redeclaration"));
+ }
+ }
return retval;
}