diff options
author | Xavier Leroy <xavier.leroy@inria.fr> | 2015-03-14 11:07:18 +0100 |
---|---|---|
committer | Xavier Leroy <xavier.leroy@inria.fr> | 2015-03-14 11:07:18 +0100 |
commit | 263e5f9049a9151134f9852acddf8ae0e5f90990 (patch) | |
tree | cc1ff36344e25f16fc3e72dd4d254c21efcb23b2 /cfrontend | |
parent | 890141acb930bdb6f985244f81833331382f7b66 (diff) | |
parent | e00261d59ed14721c4b0baab6cd5fe12aeaa06c6 (diff) | |
download | compcert-kvx-263e5f9049a9151134f9852acddf8ae0e5f90990.tar.gz compcert-kvx-263e5f9049a9151134f9852acddf8ae0e5f90990.zip |
Merge branch 'master' into struct-passing
Conflicts:
ia32/PrintAsm.ml
Diffstat (limited to 'cfrontend')
-rw-r--r-- | cfrontend/C2C.ml | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/cfrontend/C2C.ml b/cfrontend/C2C.ml index 0ccf569b..2b9a54a4 100644 --- a/cfrontend/C2C.ml +++ b/cfrontend/C2C.ml @@ -365,8 +365,10 @@ a constant)"; Integers.Int.zero in | _ -> error "ill-formed __builtin_memcpy_aligned (4th argument must be a constant)"; Integers.Int.one in (* to check: sz1 > 0, al1 divides sz1, al1 = 1|2|4|8 *) + (* Issue #28: must decay array types to pointer types *) Ebuiltin(EF_memcpy(sz1, al1), - Tcons(typeof dst, Tcons(typeof src, Tnil)), + Tcons(typeconv(typeof dst), + Tcons(typeconv(typeof src), Tnil)), Econs(dst, Econs(src, Enil)), Tvoid) | _ -> assert false |