aboutsummaryrefslogtreecommitdiff
path: root/tests/tests2/86-struct-init.expect
Commit message (Collapse)AuthorAgeFilesLines
* updates & cleanups (tcc-doc/Changelog/TODO ...)grischka2017-02-131-40/+0
| | | | | | | | | | | | | | | - tcc-doc.texi: commandline option info update - Changelog/TODO: update - tests/tcctest.py: removed - tests/Makefile: weaktest fixed - tests/tests2: some files renamed and/or converted to unix LF - configure/Makefile: --enable-static option (no dll on win32) - win32/build-tcc.bat: msvc support - win32/tcc-win32.txt: build info update - win32/vs2015/: VS solution removed - win32/include/tcc/tcc_libm.h: #include statement fixed - tcc.c: -include <file> option help info - .gitignore: cleanup
* Fix initializing members multiple timesMichael Matz2016-12-151-0/+3
| | | | | | | When intializing members where the initializer needs relocations and the member is initialized multiple times we can't allow that to lead to multiple relocations to the same place. The last one must win.
* struct-init: Support range inits for local varsMichael Matz2016-12-151-0/+1
| | | | Implement missing support for range init for local variables.
* struct-init: Allow member initialization from qualified lvaluesMichael Matz2016-12-151-0/+4
| | | | See testcase.
* struct-init: Correctly parse unnamed member initializersMichael Matz2016-12-151-0/+4
| | | | | | | | | | | | | For union U { struct {int a,b}; int c; }; union U u = {{ 1, 2, }}; The unnamed first member of union U needs to actually exist in the structure so initializer parsing isn't confused about the double braces. That means also the a and b members must be part of _that_, not of union U directly. Which in turn means we need to do a bit more work for field lookup. See the testcase extension for more things that need to work.
* struct-init: CleanupMichael Matz2016-12-151-0/+1
| | | | | | | Remove dead code and variables. Properly check for unions when skipping fields in initializers. Make tests2/*.expect depend on the .c files so they are automatically rebuilt when the latter change.
* struct-init: Implement initializing subaggregatesMichael Matz2016-12-151-0/+27
E.g. "struct { struct S s; int a;} = { others, 42 };" if 'others' is also a 'struct S'. Also when the value is a compound literal. See added testcases.