summaryrefslogtreecommitdiffstats
path: root/gcc/go/gofrontend
Commit message (Collapse)AuthorAgeFilesLines
...
* compiler: Check for negative or inverted arguments to make.ian2012-12-051-18/+43
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194173 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Give error for constant inverted slice range.ian2012-12-041-2/+12
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194124 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Reject invalid nil == nil comparisons.ian2012-12-041-0/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194119 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix crash in go/defer of some builtin functions.ian2012-12-043-27/+38
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194114 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Don't permit go/defer argument to be parenthesized.ian2012-12-041-3/+6
| | | | | | | Fixes Go repository issue 4468. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194112 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix field tracking for references in global initializers.ian2012-12-031-1/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194073 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Don't encode non-ASCII characters in identifiers.ian2012-12-031-5/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194068 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix nil func panics, constant type conversions.ian2012-12-032-63/+98
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194064 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix bug converting unnamed types with placeholders.ian2012-12-012-57/+98
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194011 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix fieldtrack info for unexported type.ian2012-11-301-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193985 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler, runtime: Track fields with tag go:"track".ian2012-11-297-5/+138
| | | | | | | | | | * go-gcc.cc: Include "output.h". (global_variable): Add is_unique_section parameter. (global_variable_set_init): Adjust unique section if necessary. * Make-lang.in (go/go-gcc.o): Add dependency on output.h. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193945 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Implement //go:nointerface comments.ian2012-11-288-7/+126
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193874 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Don't use memcmp for equality if struct has trailing padding.ian2012-11-252-25/+35
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193791 138bc75d-0d04-0410-961f-82ee72b054a4
* PR translation/53764ian2012-11-191-1/+1
| | | | | | | | | compiler: Fix typo in error message. Reported by Roland Stigge. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193626 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Adjust for vec changes.ian2012-11-182-58/+68
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193596 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: don't remove floating point conversion of typed constantian2012-11-161-0/+40
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193565 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler, runtime: Size of int is now 64 bits on x86_64.ian2012-11-061-2/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193255 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler, libgo: Fixes to prepare for 64-bit int.ian2012-11-061-2/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193254 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler, runtime: Memcmp routine returns intgo.ian2012-11-061-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193253 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler, runtime: More steps toward separating int and intgo.ian2012-11-016-51/+69
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193059 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Add -fgo-relative-import-path.ian2012-10-315-8/+48
| | | | | | | | | | | | | | * lang.opt (-fgo-relative-import-path): New option. * go-lang.c (go_relative_import_path): New static variable. (go_langhook_init): Pass go_relative_import_path to go_create_gogo. (go_langhook_handle_option): Handle -fgo-relative-import-path. * go-c.h (go_create_gogo): Update declaration. * gccgo.texi (Invoking gccgo): Document -fgo-relative-import-path. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193008 138bc75d-0d04-0410-961f-82ee72b054a4
* libgo: Update to current sources.ian2012-10-234-8/+20
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192704 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix a, b, c := b, a, 1 when a and b already exist.ian2012-10-032-16/+60
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192022 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix a couple of type reflection strings.ian2012-10-021-3/+9
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192014 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix parse of (<- chan <- chan <- int)(x).ian2012-10-022-8/+83
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192011 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix handling of omitted expression in switch.ian2012-09-281-19/+10
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191842 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Better error for missing comma in composite literal.ian2012-09-271-1/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191795 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Better warning for switch on non-comparable type.ian2012-09-241-0/+10
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191683 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler, runtime: Reject surrogate pair converting int to string.ian2012-09-221-0/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191636 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: No error if shift operand inherits interface type.ian2012-09-221-1/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191634 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix determining types for builtin complex function.ian2012-09-221-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191630 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix unnamed struct type converted to interface type.ian2012-09-226-46/+135
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191627 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Better error messages for single- and multiple- value.ian2012-09-212-4/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191621 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Better error message if method requires pointer receiver.ian2012-09-211-2/+3
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191619 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: len(<-c) is not a constant.ian2012-09-211-48/+47
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191616 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Update for GCC push_cfun changes.ian2012-09-201-9/+0
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191582 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix struct hash and equality with _ fields.ian2012-09-202-0/+15
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191511 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Give error for byte-order-mark in middle of file.ian2012-09-201-1/+9
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191507 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Ignore byte-order-mark at start of file.ian2012-09-191-1/+10
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191485 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix multiple types with same name in function.ian2012-09-195-26/+115
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191461 138bc75d-0d04-0410-961f-82ee72b054a4
* compile: Detect invalid and likely-bad import statements.ian2012-09-174-1/+89
| | | | | | | * Make-lang.in (go/gogo.o): Depend on filenames.h. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191372 138bc75d-0d04-0410-961f-82ee72b054a4
* Remove unnecessary VEC function overloads.dnovillo2012-09-112-34/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Several VEC member functions that accept an element 'T' used to have two overloads: one taking 'T', the second taking 'T *'. This used to be needed because of the interface dichotomy between vectors of objects and vectors of pointers. In the past, vectors of pointers would use pass-by-value semantics, but vectors of objects would use pass-by-reference semantics. This is no longer necessary, but the distinction had remained. The main side-effect of this change is some code reduction in code that manipulates vectors of objects. For instance, - struct iterator_use *iuse; - - iuse = VEC_safe_push (iterator_use, heap, iterator_uses, NULL); - iuse->iterator = iterator; - iuse->ptr = ptr; + struct iterator_use iuse = {iterator, ptr}; + VEC_safe_push (iterator_use, heap, iterator_uses, iuse); Compile time performance was not affected. Tested on x86_64 and ppc64. Also built all-gcc on all targets using VEC routines: arm, bfin, c6x, epiphany, ia64, mips, sh, spu, and vms. 2012-09-10 Diego Novillo <dnovillo@google.com> * vec.h (vec_t::quick_push): Remove overload that accepts 'T *'. Update all users. (vec_t::safe_push): Likewise. (vec_t::quick_insert): Likewise. (vec_t::lower_bound): Likewise. (vec_t::safe_insert): Likewise. (vec_t::replace): Change second argument to 'T &'. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191165 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Comparisons return untyped boolean value.ian2012-08-232-16/+33
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190612 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Remove old handling of unsafe.Pointer in type assertions.ian2012-08-231-33/+2
| | | | | | | Fixes issue 17. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190608 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Adjust for GCC always being built with C++.ian2012-08-153-28/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190405 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Reject type switch using non-interface type.ian2012-08-111-38/+24
| | | | | | | Fixes issue 16. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190310 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler, reflect: Quote package path with tabs.ian2012-06-141-4/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@188548 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Avoid unnecessary interface conversions.ian2012-06-141-2/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@188545 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler, reflect: Handle package path like gc compiler.ian2012-06-122-9/+23
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@188482 138bc75d-0d04-0410-961f-82ee72b054a4
* compiler: Fix taking address of field of local variable.ian2012-06-071-0/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@188299 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud