免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3282 | 回复: 9
打印 上一主题 下一主题

为Coo改进gcc [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-06-04 10:18 |只看该作者 |倒序浏览
http://sourceforge.net/projects/coo/
gcc -fms-extensions就可以支持Coo,但不完美
1. union默认初始化,gcc初始化第一个,而EXTENDS2却用第一来覆盖
旧虚表指针,所以union默认初始化最好躲开---初始化最后一个,本来
原来C标准就不应只优待第一个。
2. Coo很少使用强制类型转化,这样可以充分利用类型检查来保障Coo的
健壮,但有一个例外,在虚表初始化时为了性能和简洁使用了强制类型
转化函数指针,int (*)(CThis*)强制转化为int (*)(CBase*),这里存在
出错隐患,但又是合理要求。只要对gcc稍加改进即可,判断CThis中包含
以CBase命名(或类型)的成员,并且偏移为0,就认为参数兼容。此逻辑是
严谨兼容的,决不会影响以前程序,也不会有副作用。
其实我觉得C标准做这些改进最好。当然改标准就不能只为Coo,函数参数
兼容判断就不要用CBase命名,而是用CBase类型。

论坛徽章:
2
摩羯座
日期:2013-10-10 14:29:04天蝎座
日期:2014-01-03 09:14:49
2 [报告]
发表于 2010-06-04 13:09 |只看该作者
支持一下

论坛徽章:
0
3 [报告]
发表于 2010-06-04 13:32 |只看该作者
Coo比GCC改进了哪些

论坛徽章:
0
4 [报告]
发表于 2010-06-05 12:04 |只看该作者
Coo比GCC改进了哪些
aaaaa5aa 发表于 2010-06-04 13:32



Coo不是新的语言,也不是新的编译器.是C向OO的一个扩展
现在gcc加个参数后就可以支持Coo,但不完美.
我将贴子发到这里,是希望哪位认可Coo又能熟练修改gcc的
高手帮忙做些改进,如果怕影响别人,可以全归到
-fms-extensions参数下.这件事我也可以做,但一来确实很
忙,二来没修改gcc经验.gcc那么大实在让我发怵,但修改tcc
的经验告诉我应该会者不难.

论坛徽章:
0
5 [报告]
发表于 2010-06-05 19:21 |只看该作者
我熟悉另一个工业级的compiler,但是不了解你的Coo。

论坛徽章:
0
6 [报告]
发表于 2010-06-05 20:44 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
7 [报告]
发表于 2010-06-06 08:20 |只看该作者
我熟悉另一个工业级的compiler,但是不了解你的Coo。
prolj 发表于 2010-06-05 19:21



clang吗?现在成熟了吗?
Coo并不复杂http://bbs.chinaunix.net/thread-1715134-1-1.html

论坛徽章:
0
8 [报告]
发表于 2010-06-06 13:28 |只看该作者
All right. Play with yourself.

论坛徽章:
0
9 [报告]
发表于 2010-06-07 00:20 |只看该作者
clang吗?现在成熟了吗?
Coo并不复杂
pan_0326 发表于 2010-06-06 08:20


LZ居然问clang成熟了吗?
看来你想做的Coo也不会成熟到哪里去……

不是我故意打击你,其实我也在做新语言。
所以不愿意看到像你这样有想法有行动的人走错方向(当然也有可能是我错不是你错)
但是不跟进软件工业的趋势,很难有人愿意跟你做。

论坛徽章:
2
摩羯座
日期:2013-10-10 14:29:04天蝎座
日期:2014-01-03 09:14:49
10 [报告]
发表于 2010-06-07 11:12 |只看该作者
just for fun
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP