Skip to content

lcc v0.1

caipeng edited this page Nov 6, 2022 · 1 revision

Welcome to the lcc wiki!

lcc v0.1功能列表

一:预处理器

  • #include
  • #define
  • #if/#else/#elif/#endif

二:词法

  • 标识符
  • 关键字-所有
  • 分界符和运算符-所有
  • 字符常量
  • 数值常量
  • 字符串字面值
  • utf-8

三:语法

声明部分

  • 基础类型
  • 指针类型
  • 数组类型
  • 结构体类型
  • 函数
  • 全局变量

语句部分

  • if语句
  • while语句
  • do-while语句
  • for语句
  • for-declaration语句
  • return语句
  • break语句
  • continue语句
  • 声明语句
  • 表达式语句
  • 复合语句
  • goto语句
  • label语句
  • switch语句
  • case语句
  • 多层if嵌套

表达式

  • 赋值表达式
  • 条件表达式
  • 逻辑或表达式
  • 逻辑与表达式
  • 按位或表达式
  • 按位异或表达式
  • 按位与表达式
  • 关系表达式
  • 移位表达式
  • 加法表达式
  • 乘法表达式
  • 强转表达式
  • 取地址表达式
  • 解引用表达式
  • 一元+表达式
  • 一元-表达式
  • 按位取反表达式
  • 逻辑取反表达式
  • 前置++
  • 前置—
  • sizeof表达式
  • 数组调用表达式
  • 函数调用表达式
  • 结构体成员调用表达式
  • 后置++
  • 后置—
  • 变量表达式
  • 常量表达式
  • 字符串表达式
  • 括号表达式

四: 测试驱动

五:语义分析

六:错误处理

七:Driver

八:跨平台