- warnings complaint_flag;
- switch (at_directive_argv[0][1])
- {
- case 'w': complaint_flag = Wother; break;
- case 'c': complaint_flag = complaint; break;
- case 'f': complaint_flag = fatal; break;
- default: aver (false); break;
- }
- switch (at_directive_argc)
- {
- case 2:
- complain (complaint_flag, "%s", _(at_directive_argv[1]));
- break;
- case 3:
- complain (complaint_flag, _(at_directive_argv[1]),
- at_directive_argv[2]);
- break;
- case 4:
- complain (complaint_flag, _(at_directive_argv[1]),
- at_directive_argv[2], at_directive_argv[3]);
- break;
- case 5:
- complain (complaint_flag, _(at_directive_argv[1]),
- at_directive_argv[2], at_directive_argv[3],
- at_directive_argv[4]);
- break;
- case 6:
- complain (complaint_flag, _(at_directive_argv[1]),
- at_directive_argv[2], at_directive_argv[3],
- at_directive_argv[4], at_directive_argv[5]);
- break;
- default:
- fail_for_at_directive_too_many_args (at_directive_argv[0]);
- break;
- }
- }
- else if (STREQ (at_directive_argv[0], "@warn_at")
- || STREQ (at_directive_argv[0], "@complain_at")
- || STREQ (at_directive_argv[0], "@fatal_at"))
- {
- warnings complaint_flag;