From: nasm-bot f. C. G. <gor...@gm...> - 2017-01-06 17:30:20
|
Commit-ID: 15ce78fc5b968c750d005a3287d3419e3a994094 Gitweb: http://repo.or.cz/w/nasm.git?a=commitdiff;h=15ce78fc5b968c750d005a3287d3419e3a994094 Author: Cyrill Gorcunov <gor...@gm...> AuthorDate: Fri, 6 Jan 2017 20:21:28 +0300 Committer: Cyrill Gorcunov <gor...@gm...> CommitDate: Fri, 6 Jan 2017 20:22:36 +0300 macros: Define ofmt specific macros late In commits e1f985c1674951 and f7606613d047ff we reordered macros handling, but ofmt specific macros are to be handled after standart ones are processed. In particular __SECT__ handling must not change, so the order of inclusion does matter. https://bugzilla.nasm.us/show_bug.cgi?id=3392376 Signed-off-by: Cyrill Gorcunov <gor...@gm...> --- asm/preproc.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/asm/preproc.c b/asm/preproc.c index 24dbc35..ee91d15 100644 --- a/asm/preproc.c +++ b/asm/preproc.c @@ -444,6 +444,7 @@ static uint64_t nested_rep_count; static macros_t *stdmacpos; static macros_t **stdmacnext; static macros_t *stdmacros[8]; +static macros_t *extrastdmac; /* * Tokens are allocated in blocks to improve speed @@ -4969,6 +4970,9 @@ pp_reset(char *file, int apass, StrList **deplist) pp_add_stdmac(nasm_stdmac_nasm); pp_add_stdmac(nasm_stdmac_version); + if (extrastdmac) + pp_add_stdmac(extrastdmac); + stdmacpos = stdmacros[0]; stdmacnext = &stdmacros[1]; @@ -5362,6 +5366,11 @@ static void pp_add_stdmac(macros_t *macros) *mp = macros; } +static void pp_extra_stdmac(macros_t *macros) +{ + extrastdmac = macros; +} + static void make_tok_num(Token * tok, int64_t val) { char numbuf[32]; @@ -5403,7 +5412,7 @@ const struct preproc_ops nasmpp = { pp_reset, pp_getline, pp_cleanup, - pp_add_stdmac, + pp_extra_stdmac, pp_pre_define, pp_pre_undefine, pp_pre_include, |