aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_init.c
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2019-02-14 11:33:30 +0100
committerGitHub <[email protected]>2019-02-14 11:33:30 +0100
commit21988f3d212778124565038a2b2310925eb6ccc1 (patch)
tree4d786abe0de4b8a9a6f6568fbd4a57ef9fd5bf38 /erts/emulator/beam/erl_init.c
parent29534be6b43a9f0892996efd618dfe948fac8ded (diff)
parentea0e763e953f9c7d1fa9c142f24cb95f56119c56 (diff)
downloadotp-21988f3d212778124565038a2b2310925eb6ccc1.tar.gz
otp-21988f3d212778124565038a2b2310925eb6ccc1.tar.bz2
otp-21988f3d212778124565038a2b2310925eb6ccc1.zip
Merge pull request #2113 from richcarl/optional-tuple-calls
Optional tuple calls OTP-15580
Diffstat (limited to 'erts/emulator/beam/erl_init.c')
-rw-r--r--erts/emulator/beam/erl_init.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/erts/emulator/beam/erl_init.c b/erts/emulator/beam/erl_init.c
index 30da0c83e0..163724ed3c 100644
--- a/erts/emulator/beam/erl_init.c
+++ b/erts/emulator/beam/erl_init.c
@@ -729,6 +729,9 @@ void erts_usage(void)
erts_fprintf(stderr, "-zebwt val set ets busy wait threshold, valid values are:\n");
erts_fprintf(stderr, " none|very_short|short|medium|long|very_long|extremely_long\n");
#endif
+ erts_fprintf(stderr, "-ztma bool enable/disable tuple module apply support in emulator\n");
+ erts_fprintf(stderr, " (transitional flag for parameterized modules; recompile\n");
+ erts_fprintf(stderr, " with +tuple_calls for compatibility with future versions)\n");
erts_fprintf(stderr, "\n");
erts_fprintf(stderr, "Note that if the emulator is started with erlexec (typically\n");
erts_fprintf(stderr, "from the erl script), these flags should be specified with +.\n");
@@ -2212,6 +2215,17 @@ erl_start(int argc, char **argv)
erts_usage();
}
}
+ else if (has_prefix("tma", sub_param)) {
+ arg = get_arg(sub_param+3, argv[i+1], &i);
+ if (sys_strcmp(arg,"true") == 0) {
+ tuple_module_apply = 1;
+ } else if (sys_strcmp(arg,"false") == 0) {
+ tuple_module_apply = 0;
+ } else {
+ erts_fprintf(stderr, "bad tuple module apply %s\n", arg);
+ erts_usage();
+ }
+ }
else {
erts_fprintf(stderr, "bad -z option %s\n", argv[i]);
erts_usage();