aboutsummaryrefslogtreecommitdiff
path: root/flags/src/impl.rs
blob: 4f7b8fb4b6084ef218d0ac3f356cafc44ad3bd96 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#[allow(unused_assignments, unused_mut, unused_variables)]
pub const STD: &str = {
    let mut flags = ["-std=c++11", "/std:c++11"];

    #[cfg(feature = "c++14")]
    (flags = ["-std=c++14", "/std:c++14"]);

    #[cfg(feature = "c++17")]
    (flags = ["-std=c++17", "/std:c++17"]);

    #[cfg(feature = "c++20")]
    (flags = ["-std=c++20", "/std:c++20"]);

    let [mut flag, msvc_flag] = flags;

    #[cfg(target_env = "msvc")]
    (flag = msvc_flag);

    flag
};