I understand that this use case is not the one intended by this project but it seems to reveal some edge cases when trying to compile/build with cosmopolitan libc (https://github.com/jart/cosmopolitan).
I manged to compile/build c2m using cosmopolitan libc with this shell script:
And adding a conditional macro wrapper around standard headers like this:
/* This file is a part of MIR project.
Copyright (C) 2018-2021 Vladimir Makarov <vmakarov.gcc@gmail.com>.
*/
#ifndef MIR_H
#define MIR_H
#ifdef __cplusplus
extern "C" {
#endif
#if defined(_WIN32) && !defined(_WIN64)
#error "MIR does not work on 32-bit Windows"
#endif
#ifndef WHITHOUT_STD_HEADERS ///wrapper to conditionally exclude
#include <stdio.h>
#include <stdint.h>
#include <assert.h>
#endif ///wrapper end
#include "mir-dlist.h"
#include "mir-varr.h"
#include "mir-htab.h"
Then when I try to compile one example using cosmopolitan.h (even with the default c2m) I'm getting several warning/errors like:
./ape.elf ./c2m.com exprtk_functional_test-small.c
...
./cosmopolitan.h:363:25: syntax error on identifier (expected ';'):
./cosmopolitan.h:363:25: syntax error on identifier (expected '<declarator>'):
./cosmopolitan.h:375:23: syntax error on identifier (expected ';'):
./cosmopolitan.h:375:23: syntax error on identifier (expected '<declarator>'):
./cosmopolitan.h:395:9: syntax error on struct (expected '<declarator>'):
./cosmopolitan.h:1728:18: syntax error on const (expected 'identifier'):
./cosmopolitan.h:1728:18: syntax error on const (expected '<declarator>'):
./cosmopolitan.h:1944:16: syntax error on ( (expected '<declarator>'):
./cosmopolitan.h:1945:16: syntax error on ( (expected '<declarator>'):
./cosmopolitan.h:1947:12: syntax error on void (expected 'identifier'):
...
I understand that this use case is not the one intended by this project but it seems to reveal some edge cases when trying to compile/build with cosmopolitan libc (https://github.com/jart/cosmopolitan).
I manged to compile/build
c2m
using cosmopolitan libc with this shell script:And adding a conditional macro wrapper around standard headers like this:
Then when I try to compile one example using
cosmopolitan.h
(even with the defaultc2m
) I'm getting several warning/errors like:Test file: