Compilation

A compilation test tries to execute a GNU-Make rule given in a Makefile. If errors occur during the execution (compilation) of the target, the test is marked as failed, and the error messages generated when executing the makefile rule are returned as feedback for the student. In case no errors occur, the student gets the feedback that the test has been run successfully.

The only limitations for compilation tests are set by what the chosen compiler offers. When using GCC as the compiler, among others, the following test cases would be possible. For the examples, it is supposed that a ex.c-file is the only necessary C-file. The snippets are to be interpreted as GNU Makefile with implicit rules.

Compilation

A simple check if the submitted code compiles at all:

CC=gcc
CFLAGS=-std=c11

ex: ex.c

Warnings

Check if the submitted code compiles without warnings:

CC=gcc
CFLAGS=-Wall -Werror -Wextra -Wpedantic -std=c11

ex: ex.c