File: export_marked_symbols_thin_lto.d

package info (click to toggle)
ldc 1%3A1.30.0-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 59,248 kB
  • sloc: cpp: 61,598; ansic: 14,545; sh: 1,014; makefile: 972; asm: 510; objc: 135; exp: 48; python: 12
file content (18 lines) | stat: -rw-r--r-- 500 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Tests that mismatching symbol visibilities between declarations and definitions
// work with thin LTO.

// REQUIRES: LTO

// RUN: %ldc %S/inputs/export_marked_symbols_lib.d -c -fvisibility=hidden -flto=thin -of=%t_lib%obj
// RUN: %ldc %s -I%S/inputs -flto=thin -of=%t%exe %t_lib%obj

import export_marked_symbols_lib;

void main()
{
    exportedGlobal = 1;
    normalGlobal = 2; // declared in this module with default visibility, defined as hidden

    exportedFoo();
    normalFoo(); // ditto
}