openbsd-ports/lang/llvm-gcc4/patches/patch-gcc_c-common_c
sthen cb6a8938ed Import llvm-gcc4, not yet linked to the build. This is a work in
progress, largely based on the gcc port in ports/lang/gcc/4.2.
Requested by jsg@.

It's somewhat usable on i386 (shared lib versions not yet properly
under control). Build on amd64 currently fails with -fPIC problems.

-- --
lvm-gcc is the LLVM C front end. It is a modified version of gcc
that compiles C/C++/ObjC programs into native objects, LLVM bitcode or
LLVM assembly language, depending upon the options.

By default, llvm-gcc compiles to native objects just like GCC does.
If the -emit-llvm option is given then it will generate LLVM bitcode
files instead. If -S (assembly) is also given, then it will generate
LLVM assembly.

Being derived from the GNU Compiler Collection, llvm-gcc has many of
gcc's features and accepts most of gcc's options. It handles a number
of gcc's extensions to the C programming language.
<sthen@zephyr:/usr/ports/mystuff/lang/llvm-gcc4:9>$CVS: ----------------------------------------------------------------------
2009-06-22 22:37:31 +00:00

38 lines
1.5 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

$OpenBSD: patch-gcc_c-common_c,v 1.1.1.1 2009/06/22 22:37:32 sthen Exp $
--- gcc/c-common.c.orig Mon May 4 17:45:55 2009
+++ gcc/c-common.c Mon Jun 22 00:58:03 2009
@@ -641,6 +641,8 @@ static tree handle_cleanup_attribute (tree *, tree, tr
static tree handle_warn_unused_result_attribute (tree *, tree, tree, int,
bool *);
static tree handle_sentinel_attribute (tree *, tree, tree, int, bool *);
+static tree handle_bounded_attribute (tree *, tree, tree, int, bool *);
+
/* APPLE LOCAL radar 5932809 - copyable byref blocks */
static tree handle_blocks_attribute (tree *, tree, tree, int, bool *);
@@ -738,6 +740,8 @@ const struct attribute_spec c_common_attribute_table[]
/* APPLE LOCAL end "unavailable" attribute --ilr */
{ "vector_size", 1, 1, false, true, false,
handle_vector_size_attribute },
+ { "bounded", 3, 4, false, true, false,
+ handle_bounded_attribute },
{ "visibility", 1, 1, false, false, false,
handle_visibility_attribute },
{ "tls_model", 1, 1, true, false, false,
@@ -5807,6 +5811,15 @@ handle_vector_size_attribute (tree *node, tree name, t
*node = reconstruct_complex_type (*node, new_type);
return NULL_TREE;
+}
+
+static tree
+handle_bounded_attribute (tree *ARG_UNUSED (node), tree ARG_UNUSED (name),
+ tree ARG_UNUSED (args),
+ int ARG_UNUSED (flags), bool *no_add_attrs)
+{
+ *no_add_attrs = true;
+ return NULL_TREE;
}
/* Handle the "nonnull" attribute. */