Ignore:
Timestamp:
May 8, 2024, 4:41:33 PM (5 months ago)
Author:
JiadaL <j82liang@…>
Branches:
master
Children:
41c8312
Parents:
0843ba6
Message:

Add GCC visibility push(default); Fix trait satisfaction problem

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcfa/src/enum.cfa

    r0843ba6 r03ac869  
    22#include "fstream.hfa"
    33
    4 forall(E, T| TypedEnum(E, T)) {
     4#pragma GCC visibility push(default)
     5
     6forall(T, E| TypedEnum(T, E)) {
    57    // constructors
    68
    79    // comparison
    810    int ?==?(E l, E r) { return posE(l) == posE(r); }
    9     int ?!=?(E l, E r) { return !(l == r); }
     11    int ?!=?(E l, E r) { return posE(l) != posE(r); }
    1012    int ?!=?(E l, zero_t) { return !( posE(l) == 0 ); }
    1113    int ?<?(E l, E r) { return posE(l) < posE(r); }
     
    1315    int ?>?(E l, E r) { return posE(l) > posE(r); }
    1416    int ?>=?(E l, E r) {  return posE(l) >= posE(r); }
    15 
    16     // for testing; To be removed
    17     // #include <string.h>
    18     char * typeEnumString(E e) {
    19         // char* out = malloc(sizeof(char) * (5 + strlen(labelE(e) + 1)));
    20         // return strcat(strcat(out, "Enum "), labelE(e));
    21         return labelE(e);
    22     }
    2317}
Note: See TracChangeset for help on using the changeset viewer.