diff options
author | Dawn Perchik <dawn@burble.org> | 2010-09-03 01:29:35 +0000 |
---|---|---|
committer | Dawn Perchik <dawn@burble.org> | 2010-09-03 01:29:35 +0000 |
commit | 52fc314e1b5e1baee6305067cf831763d02bd243 (patch) | |
tree | e6522fa435073d32631e8de16eb6d3e2e05df117 /lib/Sema/SemaDeclAttr.cpp | |
parent | 47a88fa2efdaf40449b7e7e28252c7c6f410b37f (diff) |
Add symantic support for the Pascal calling convention via
"__attribute((pascal))" or "__pascal" (and "_pascal" under
-fborland-extensions). Support still needs to be added to llvm.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112939 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaDeclAttr.cpp')
-rw-r--r-- | lib/Sema/SemaDeclAttr.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Sema/SemaDeclAttr.cpp b/lib/Sema/SemaDeclAttr.cpp index f987067a31..25af73ae13 100644 --- a/lib/Sema/SemaDeclAttr.cpp +++ b/lib/Sema/SemaDeclAttr.cpp @@ -1986,6 +1986,9 @@ static void HandleCallConvAttr(Decl *d, const AttributeList &Attr, Sema &S) { case AttributeList::AT_cdecl: d->addAttr(::new (S.Context) CDeclAttr(Attr.getLoc(), S.Context)); return; + case AttributeList::AT_pascal: + d->addAttr(::new (S.Context) PascalAttr(Attr.getLoc(), S.Context)); + return; default: llvm_unreachable("unexpected attribute kind"); return; @@ -2294,6 +2297,7 @@ static void ProcessDeclAttribute(Scope *scope, Decl *D, case AttributeList::AT_cdecl: case AttributeList::AT_fastcall: case AttributeList::AT_thiscall: + case AttributeList::AT_pascal: HandleCallConvAttr(D, Attr, S); break; default: |