Search notes:

cl /B1

The /B1 option names an alternative frontend compiler (which is responsible for the parsing of the source code and ordinarily is c1 (c-one, not c-ell) for cl.
With such an alternative frontend, it might be possible to find the default options for cl.

cl-frontend.c

This simple source build an alternative frontend. It checks for the two environment variables MSC_CMD_FLAGS and MSC_IDE_FLAGS and prints their values if they exist.
Since it does not do anything meaningful else, it just returns -1.
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char **argv) {

    char *p;
    char  buf[2048]; // Beware of buffer overruns!
    int   i;

    printf("Alternative frontend\n");
    for (i = 1; i<argc; i++) {
      printf("  argv[%2d] = %s\n", i, argv[i]);
    }

    if ((p = getenv("MSC_CMD_FLAGS")) != NULL) {
        printf("MSC_CMD_FLAGS:\n%s\n", p);
    }

    if ((p = getenv("MSC_IDE_FLAGS")) != NULL) {
        printf("MSC_IDE_FLAGS:\n%s\n", p);
    }

    return -1;
}
Github repository about-cl, path: /options/B/1/cl-frontend.c

prog.c

This is the program we try to build with the alternative frontend.
#include <stdio.h>

int main(void) {
  printf("Hello world\n");
  return 0;
}
Github repository about-cl, path: /options/B/1/prog.c

Makefile

prog.obj: prog.c cl-frontend.exe
	@cl /B1cl-frontend /c prog.c /Foprog.obj

cl-frontend.exe: cl-frontend.c Makefile
	@cl cl-frontend.c

clean:
	@del *.obj *.exe
Github repository about-cl, path: /options/B/1/Makefile

See also

cl options

Links

https://stackoverflow.com/a/3672331/180275
https://www.geoffchappell.com/studies/msvc/cl/cl/options/b1.htm

Index